Udawanie Androida może być przydatne
26.09.2017 21:22
Jeżeli używasz telefonu, dziś prawdopodobnie jest to telefon z Androidem (wg części źródeł ponad 80% udziału na rynku) . W praktyce jednakowoż określenie "telefon" nie jest już zbyt adekwatne by opisywać, czym właściwie jest urządzenie które trzymasz w dłoni - bliżej mu bowiem do zminiaturyzowanego komputera, niż prostego narzędzia telekomunikacyjnego. Podobnie do PeCeta możesz na nim instalować aplikacje (nierzadko te same), a szybkość ich uruchamiania oraz płynność działania będą zależały m.in. - również podobnie jak w komputerze - od ilości pamięci operacyjnej oraz prędkości procesora urządzenia. Jeśli zaś chodzi o funkcje jakie Twój smartfon/tablet będzie posiadał "sam z siebie" (poza aplikacjami) - będą determinowane wersją systemu operacyjnego (na PeCetach np. nowe Windowsy, tu: nowe Androidy).
- Kiedy lata temu ktoś powiedziałby Mi, że nadejdzie czas w którym większością telefonów będzie kierował mały zielony ludzik - pomyślałbym iż pewnie wreszcie doszło do inwazji...
Jako że więc dzisiejszym smartfonom bliżej do komputerów niż telefonów - warto wiedzieć jak możemy na tym skorzystać, jak również - czego warto unikać. Lub inaczej: co może usprawnić, a co zaszkodzić optymalnemu działaniu Naszego urządzenia?
Diabeł tkwi w szczegółach.
Odpowiedzi jest całkiem sporo, dziś chciałbym skoncentrować się na bardziej nietypowej z nich: emulatorach. Zanim jednak do nich przejdziemy, pozwól że wskażę "diabełka" :) .
Jeżeli zapytać, co najbardziej zużywa baterię w Naszym urządzeniu, moglibyśmy odpowiedzieć: aplikacje. Androidowe aplikacje potrafią być pod tym względem dość szelmowskie - z uwagi na domyślnie włączone automatyczne aktualizowanie. W rezultacie wydajność Naszego urządzenia może wyraźnie spadać z biegiem czasu, choćbyśmy nawet nie instalowali nowych programów - powodem takiego stanu rzeczy będzie niepokojąca tendencja do "obrastania aplikacji w tłuszcz" (przypadłość dobrze znana również ze środowisk "biurkowych"): pod płaszczykiem ulepszania programów z wersji na wersję nierzadko otrzymujemy programy coraz bardziej wymagające, tu: zajmujące więcej pamięci operacyjnej, zużywające więcej mocy procesora, itp. Najsmutniej, iż prym w tej materii wiodą najpopularniejsze aplikacje, takie jak Facebook, Messenger, Instagram, SnapChat, Skype...
Osobną kwestią jest poszukiwanie najbardziej odpowiadającego Nam programu, czy też w ogóle: szperanie po Google Play w poszukiwaniu czegoś co mogłoby Nas zainteresować (w końcu wybór jest całkiem spory) oraz testowanie potencjalnie interesujących aplikacji.
Jeżeli chciał(a)byś by Twoje urządzenie działało jak najlepiej - oraz aby utrzymywało formę jak najdłużej - zwróć uwagę, iż instalowanie kolejnych programów również może je spowalniać (szczególnie jeśli robimy to często - bez względu na to, czy programy te później usuwamy).
Jeżeli więc poszukujemy optymalnego rozwiązania, jedną ze wskazówek byłoby: instalować jak najmniej, dobierać programy jak najlepiej.
Jak jednak dobrze wybrać, bez uprzednich testów? Prawdopodobieństwo że już za pierwszym razem trafimy na najlepszą aplikację w danej dziedzinie, jest niewielkie (zwykle mamy duży wybór, czego ilustracją jest funkcja "Zobacz podobne aplikacje" w Google Play).
Warto wiedzieć iż istnieje sposób zapewniający możliwość testowania różnych aplikacjibez uszczerbku na sprzęcie. Sposób w którym "poligonem doświadczalnym" nie będzie dłużej Nasz smartfon - lecz odizolowane środowisko na biurkowym PeCecie. W rezultacie na smartfonie będziemy instalować tylko sprawdzone aplikacje, nie obciążając go eksperymentowaniem z całą resztą. Podobnie jeśli chcielibyśmy uniknąć wspomnianego "obrastania w tłuszcz" - możemy potestować starsze wydania ulubionych programów, poszukując "złotego środka": wersji która była jeszcze szybka i lekka, a jednocześnie wystarczająco funkcjonalna. Wówczas - kiedy już taką namierzymy - wystarczy zainstalować ją ręcznie (aktywując opcję "Nieznane źródła" - w różnych miejscach w różnych urządzeniach, np. w Ustawieniach Prywatności, czy Zabezpieczeń/Bezpieczeństwa), a następnie uruchamiając wcześniej umieszczony w pamięci urządzenia plik .apk), po czym wyłączyć przypisane dlań automatyczne aktualizacje w Google Play (wchodzimy w Google Play, klikamy trzy poziome linie/Ustawienia/Aktualizuj aplikacje automatycznie - ustawiając na "Nie aktualizuj").
- Ciekawostka: starsze (częstokroć szybsze i działające płynniej) wersje androidowych programów znajdziemy np. na stronie apkmirror.com lub uptodown.com/android.
- Możliwość instalacji niektórych starszych wersji programów bywa blokowana przez producenta, dla dociekliwych (i upartych :) ) przydać się może wówczas dekompilacja pliku .apk w celu zmiany numeru wersji (wymyślmy jakąś nowszą ; całość przeprowadzimy np. za pomocą programu APK Tool). Po ponownej kompilacji będziemy dysponować dobrym starym (lekkim i szybkim) programem, "przepakowanym w nowsze pudełko".
Jeżeli koncept testowania aplikacji "na boku" i instalowania na smartfonie tylko samej "śmietanki" Cię zainteresował :) - przejdźmy do rzeczy i odsłońmy asa w rękawie.
Emulacja - Nasz "poligon doświadczalny".
Do testowania androidowych aplikacji na komputerze posłuży Nam emulator Androida. Czym jest emulator? Najprościej mówiąc, jest to program który udaje coś innego. Jedną z rzeczy które może udawać, jest właśnie Android - emulatorów jest jednak całkiem sporo, również pośród tych udających jedną i tą samą rzecz. Mnie najbardziej ucieszył emulator Pegasusa (konsola z lat 90'tych), dzięki któremu mogłem przywołać do życia magię z przeszłości, odpalając na PeCecie (dziś również i na smartfonie!) tytuły, w które zagrywałem się w podstawówce.
Na potrzeby tego artykułu skoncentrujmy się jednak na konkretnej grupie emulatorów: tych, które udają Androida. Wspomniałem, iż dzięki nim będziemy mogli bezpiecznie potestować różne aplikacje - jednocześnie nie zaśmiecając Naszego smartfona. Jest to jak najbardziej możliwe, gdyż emulator potrafi zwykle wywiązywać się dość dobrze z roli udawania Androida (jak na prawdziwym Androidzie - i tutaj ustawimy np. Własne konto Google, pobierzemy i zainstalujemy aplikacje z Google Play, itd.). Jedyną minusem emulatorów jest ich zwykle słaba wydajność: udawany Android może uruchamiać się oraz działać wyraźnie wolniej, niż ten sam na smartfonie. Na potrzeby testów wielu aplikacji nie powinno być to jednak istotną przeszkodą.
- Ciekawostka: nie tak dawno pośród emulatorów Androida zagościł nowy, potencjalnie rewolucyjny produkt: Visual Studio’s Emulator for Android spod flagi... Microsoftu (!). Został powołany do życia m.in. właśnie dlatego, by wyjść naprzeciw często kulejącej w androidowej emulacji szybkości i płynności działania (bolączka deweloperów).
"Jeśli cokolwiek, to właśnie korzystanie z emulatora powinno być szybsze, niż korzystanie z fizycznego urządzenia - tak, byś mógł testować różne scenariusze szybciej".
(https://blogs.msdn.microsoft.com/devops/2014/11/12/introducing-visual-... )
Emulator Microsoftu jest w dodatku darmowy i - choć stanowi jeden z komponentów Visual Studio - możesz go pobrać i zainstalować również osobno, bez konieczności instalacji całego pakietu. Jedynym ograniczeniem jest potrzeba posiadania systemu Windows 8 i nowszych.
Do czego jeszcze może się Nam przydać emulatorAndroida?
Poza konwencjonalnymi zastosowaniami, jakimi są: testowanie aplikacji przez ich twórców (deweloperów), czy granie w ulubione gry z Androida na PeCecie - emulator może przydać się Nam jeszcze w kilku kwestiach:
1. Korzystanie z aplikacji niedostępnych już dla Naszego Androida.
Wspominałem, iż domyślnie wszystkie aplikacje obecne na Naszym androidowym urządzeniu są automatycznie aktualizowane - co niestety nierzadko wcale nie polepsza ich jakości, wręcz odwrotnie. W takiej sytuacji przeciętny użytkownik często nie ma możliwości powrotu do poprzedniej wersji programu - w razie gdyby aktualizacja nie przypadła mu do gustu (odinstalować może aktualizacje tylko tych programów, które były obecne na urządzeniu już od samego początku). Może się jednak zdarzyć i gorsza sytuacja, w której utracimy dostęp do danej aplikacjiw ogóle - gdyż od któregoś wydania producent zdecydował się zablokować możliwość jej instalacji na starszych wersjach Androida. Powody takiego stanu rzeczy bywają różne, istotnym jest iż - jako że w Google Play obecne są tylko najnowsze wersje programów, użytkownik w którymś momencie może na zawsze utracić dostęp do ulubionej aplikacji (co najwyżej ciesząc się nią do najbliższego resetu fabrycznego urządzenia - jeżeli jednak posiadałby drugie urządzenie z tym samym Androidem, acz bez zainstalowanej aplikacji - po takim posunięciu jej producenta nie mógłby już w ogóle jej nań zainstalować (chyba że ręcznie, pozyskując uprzednio archiwalną jej wersję w pliku .apk - patrz jedna z wcześniejszych ciekawostek)).
Jeżeli jesteś w takiej sytuacji i nie możesz już zainstalować jakiegoś programu na Swoim Androidzie - nie wszystko stracone. Albo zainstalujesz ręcznie jej archiwalną wersję, albo... użyjesz emulatora by korzystać z niej na komputerze (czasem mija się to z celem, lecz czasem jest jak najbardziej akceptowalne, a czasem wręcz nawet wygodniejsze niż na małym, przenośnym - choćby i 5-6‑calowym - ekraniku).
- Wyobraź Sobie, jak ładnie mogą wyglądać instagramowe fotki, czy snapy na dużym ekranie? :) W końcu magia kina nie wzięła się znikąd ;) .
Zwróć uwagę, iż - o ile skorzystasz z emulatora z nowszym Androidem - naturalnie zyskasz również dostęp do nowszych wersji Twoich ulubionych programów. W ten sposób możesz również przetestować aktualizacje sprawdzając, "czy gra jest warta świeczki" - zanim zainstalujesz je na Swoim urządzeniu.
2. Czy naprawdę muszę używać tego programu akurat na smartfonie?
Podam Ci przykład: często korzystam z różnorakich słowników, encyklopedii, itp. - na Androidzie odnalazłem świetne narzędzie, za pomocą którego błyskawicznie przeszukam wiele źródeł pod kątem tego samego hasła (mogę wówczas porównać, które ze źródeł definiuje je precyzyjniej - jak i często złożyć bardziej kompletną definicję). Jako że jednak jest to narzędzie stricte androidowe, potrzebowałem "trochę zabawy" by pozyskiwane definicje przenosić na kompa (kopiowałem je do pliku tekstowego, włączałem serwer FTP na Androidzie, a na PeCecie program do synchronizacji danych pomiędzy komputerem, a źródłem FTP). Dzięki emulowanemu Androidowi mam o tyle łatwiej, iż odpalam program słownikowy pod Windows, kopiując definicje do współdzielonego pliku tekstowego, gdzie - już w okienkowym edytorze - opracowuję finalną wersję.
Poza wyżej opisanym przeznaczeniem nie mam właściwie potrzeby trzymać słowników na smartfonie, stąd rozwiązanie z emulatorem oszczędza Mi jeden program więcej do instalacji / w pamięci operacyjnej urządzenia.
Podobnie z innymi programami - jeśli dobrze pomyśleć, możesz dojść do wniosku iż z części aplikacji korzystasz dość rzadko. Być może i w ich przypadku emulator na PeCecie okazałby się dobrym rozwiązaniem (szczególnie przydatne w słabszych modelach smartfonów).
3. Poznawanie nowych wersji Androida.
Rozwój Androida przebiega dość prężnie, z perspektywy użytkowników konkretnych urządzeń jednakże aktualizacje do kolejnych wersji są zaskakująco rzadkie. Stąd aby być na bieżąco z tym systemem, nie możemy zbyt długo pozostawać przy jednym modelu telefonu. Nie każdy zainteresowany ma jednak możliwość odpowiednio częstego inwestowania w aktualne, zwykle flagowe modele, zdolne "unieść" najnowsze wydanie Androida. Stąd niemało użytkowników ma tak naprawdę zaległości, nowsze wydania mogąc poznawać co najwyżej z YouTube. Emulatory mogą objawić w tym miejscu promyk nadziei, gdyż pośród części z nich prawdopodobnie odnajdziemy takie, które "udają" interesujące Nas - nowsze wersje Androida. Warto zaznaczyć, iż różne emulatory udają Androida w różnym stopniu wiernie/autentycznie - co przełoży się na ilość androidowych funkcji i "zakamarków", do których będziemy mieli dostęp pod konkretnym emulatorem.
- Ciekawostka: dla bardziej zdeterminowanych, lubiących eksperymentować oraz cierpliwych użytkowników mam dobrą wiadomość: istnieje alternatywa dla emulatorów, działająca w podobnym duchu (również udaje Androida - robi to jednak znacznie wierniej): maszyna wirtualna. Powodem dla którego jest warta uwagi, jest jej elastyczność: w emulatorze odnajdziemy zwykle taką wersję Androida, jaką przygotował dla Nas producent emulatora. W maszynie wirtualnej natomiast będziemy mogli "poudawać" dowolne wydanie - przynajmniej w teorii (potrzebujemy tylko wiedzieć gdzie szukać obrazów systemu oraz dysponować odpowiednio silnym sprzętem + wiedzą, jak optymalnie skonfigurować maszynę wirtualną). Jak widać, jest to sposób znacznie bardziej zaawansowany (szczególnie w porównaniu z niektórymi emulatorami, które "po prostu działają" już po uruchomieniu) - warto jednak wiedzieć, iż możliwy (poza tym ciekawie jest doświadczyć procesu instalacji Androida przypominającego instalację kolejnego biurkowego OS'u).
---‑- screeny: Własne + screeny VirtualBox z:
https://www.howtogeek.com/164570/how-to-install-android-in-virtualbox/
oraz
http://www.borncity.com/blog/2012/10/08/running-android-4-1-jelly-bean...
+ screen Visual Studio’s Emulator for Android z: