czwartek, 3 września 2015

Wirtualne urządzenie z Androidem - Android SDK Tools

Uruchamianie Androida na wirtualnym urządzeniu

Istnieje co najmniej kilka fajnych i skutecznych metod na uruchomienie Androida na swoim komputerze stacjonarnym. Po co właściwie to robić? Jeżeli przypadkiem nie jesteś deweloperem aplikacji dla urządzeń z zainstalowanym systemem Android, to prawdopodobnie chcesz się nim tylko pobawić, poznać bliżej albo po prostu przetestować aplikacje, czy zwyczajnie pograć w gry.



W tym artykule pokażę, co pobrać, jak wszystko zainstalować, a następnie skonfigurować, by uruchomić wirtualne urządzenie z zainstalowanym najnowszym systemem Androidem 6.0 Marshmallow na lokalnym komputerze z zainstalowanym systemem Windows.


Wymagania sprzętowe

Do tej pory udało mi się przetestować kilka sposobów na uruchomienie Androida na Windowsie 10 i wiem, że Android uruchomiony przy pomocy SDK Tools działa w miarę dobrze i dość szybko, przy czym 4GB RAM w komputerze gospodarzu do zdecydowane minimum do w miarę komfortowej zabawy z AVM (Android Virtual Machine).

Wymagania sprzętowe dla Windowsa są następujące:
  •  Microsoft® Windows® 8/7/Vista/2003 (32 or 64-bit)
  • 2 GB RAM minimum, 4 GB RAM recommended
  • 400 MB hard disk space
  • At least 1 GB for Android SDK, emulator system images, and caches
  • 1280 x 800 minimum screen resolution
  • Java Development Kit (JDK) 7
  • Optional for accelerated emulator: Intel® processor with support for Intel® VT-x, Intel® EM64T (Intel® 64), and Execute Disable (XD) Bit functionality
Aby sprawdzić wymagania sprzętowe dla innych platform zapraszam tutaj.

Java SE Development Kit

Do uruchomienia AVM potrzebna nam będzie maszyna Java, dlatego zanim zainstalujemy właściwy pakiet SDK dla Androida, wcześniej potrzebna nam będzie jeszcze aktualna paczka z Java SE Development Kit.

Instalator JDK7 (Java Development Kit 7) znajdziemy na tej stronie.

Którą wersję JDK7 wybrać?

Obecnie dostępne są wersje dla Java CPU (7u79) i PSU (7u80). W większości przypadków zalecana jest ta pierwsza wersja (Java CPU (7u79)). Jeżeli Twój system jest 64 bitowy, wybierz JDK w wersji 64-bitowej.

Na następnym obrazku zaznaczyłem, z której wersji ja korzystam (jdk-7u79-windows-x64.exe).


Java SE Development Kit pobieranie
JDK 7 - strona pobierania

Po pobraniu instalatora, przechodzimy przez proces instalacji. Właściwie powinniśmy zobaczyć dwie instalacje: pierwszą dla JDK i drugą dla maszyny Java.







Instalacja Android SDK Tools


Jak już wspominałem, istnieje co najmniej kilka narzędzi, dzięki którym można uruchamiać Androida na swoim komputerze, a w tym artykule do utworzenia takiej wirtualnej maszyny z Androidem użyjemy "samodzielnych narzędzi dla developerów aplikacji Android" (Stand-alone SDK Tools), które można pobrać z oficjalnej strony developerów Androida.

Wspomniany pakiet to nieco okrojona wersja zawierająca jedynie podstawowe i niezbędne narzędzia. Pakiet ten dzięki pluginom można później zintegrować ze swoim ulubionym IDE, ale w tym artykule nie będziemy się tym zajmować.

Instalator pobierzemy stąd: https://developer.android.com/sdk/installing/index.html?pkg=tools



Proces instalacji Android SDK Tools 

 









Gdy instalacja dobiegnie końca, przechodzimy do folderu, w którym zainstalowaliśmy Android SDK, czyli C:\Program Files (x86)\Android\android-sdk, lub z menu START->Android, a następnie uruchamiamy aplikację SDK Manager.exe.



Przy pierwszym uruchomieniu powinny zostać pobrane niezbędne aktualizacje.

Dzięki SDK Manager możemy pobrać najnowszą wersję Androida Marshmallow (Developer Preview). Aby to zrobić, w oknie aplikacji, w drzewku dostępnych paczek, zaznaczamy opcję przy Android 6.0.  Następnie zatwierdzamy wybór klikając guzik Install packages...


Teraz czekamy na zakończenie pobierania i instalacji wybranych pakietów. Gdy proces dobiegnie końca, możemy uruchomić AVD Manager, dzięki któremu skonfigurujemy już nasze wirtualne urządzenie z systemem Android.

Uruchomienie wirtualnej maszyny z Androidem

 





Konfiguracja i uruchomienie wirtualnej maszyny w AVM Manager jest bardzo łatwe i możemy to zrobić na dwa sposoby:
  • Pierwszy, szybszy i łatwiejszy, to skorzystanie z predefiniowanego profilu maszyny, którą możemy wybrać z listy na drugiej zakładce programu - Device Definitions. Po wybraniu profilu, urządzenie będzie chwilę przygotowywane przez program i po minucie gotowe do uruchomienia.
  • Drugi sposób to rozpoczęcie od przygotowania własnego profilu.

Sposób pierwszy - korzystamy z predefiniowanego profilu maszyny


Z zakładki Device Definitions wybieramy profil urządzenia, które nam odpowiada. Nie należy bać się eksperymentować, gdyż można swobodnie tworzyć, edytować i kasować zarówno profile jak i maszyny wirtualne.

Dla przykładu wybrałem profil o nazwie Nexus One by Google z 3.7" wyświetlaczem i 512 MB RAM. Klikam na nim, aby wybrać, a następnie klikam w guzik Create AVD.





W nowym oknie musimy ustawić:
  • Target - z listy wybieramy wersję systemu operacyjnego. Jeżeli wcześniej w SDK Managerze pobraliśmy inne wersje Androida, to tutaj będziemy mogli to ustawić.
  • CPU/ABI - ustawiamy jaki typ procesora chcemy emulować,
  • Skin - skórka maszyny.
Ze względu na różnice sprzętowe i konfiguracyjne nie należy się przerażać jeżeli urządzenie nie uruchomi się za pierwszym razem lub na dokładnie takiej samej konfiguracji jak w tym artykule.


Po zatwierdzeniu ustawień maszyny. Po chwili powinna się pokazać na pierwszej zakładce: Android Virtual Devices.

Wybieramy naszą nowo utworzoną maszynę i z opcji po prawej wybieramy Start...


W kolejnym oknie Launch. I już po chwili powinniśmy zobaczyć loader Androida.




Sposób drugi - tworzymy własny profil maszyny wirtualnej

Drugi sposób polega na rozpoczęciu tworzenia maszyny od utworzenia nowego profilu dla wirtualnego urządzenia. Możemy tutaj ustawić wielkość wyświetlacza, jego rozdzielczość, dostępność sensorów ilość pamięci RAM i kilka innych opcji.

 



Po stworzeniu urządzenia, pojawi się na liście w zakładce Android Virtual Devices. Dalej postępujemy tak jak w pierwszym przypadku.


Linki:
  • JDK7 (http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html)
  • SDK Tools (https://developer.android.com/sdk/index.html#Other)

czwartek, 27 sierpnia 2015

Official Android 6.0 SDK & Final M Preview

Official Android 6.0 SDK & Final M Preview


Google oficjalnie poinformowało, że najnowsza wersja systemu Android jest już niemal gotowa. Od ostatniej konferencji I/O, która odbyła się w maju, wiadome było że po wersji 5.1, nadchodzi kolejna duża aktualizacja dla tego systemu. 

Według wielu spekulacji, zaprezentowany na konferencji pakiet uaktualnień zaimplementowanych w „M”, miał być drugą aktualizacją „Lizaka”. Tymczasem „M”, to kryptonim kolejnej wersji Androida, oznaczony symbolem 6.0  - Marshmallow.

Na oficjalnym blogu developerów Androida pojawił się wpis informujący o wydaniu trzeciej, finalnej wersji Androida Marshmallow oznaczonej symbolem 6.0 (Preview), oraz oficjalnej paczki z narzędziami dla developerów do tego systemu.

Aktualnie system można już pobrać i zainstalować na kompatybilnych urządzeniach (Nexus 5, Nexus 6, Nexus 9, Nexus Player) warto jednak podkreślić, że nie jest to jeszcze oficjalne wydanie przeznaczone dla użytkowników końcowych i do dnia premiery systemu wiele może się jeszcze zmienić.


Nowości w Androidzie Marshmallow

Android Marshmallow, to przede wszystkim ulepszenia mające na celu zoptymalizowanie i poprawę wydajności działania systemu. Wyeliminowanych zostało wiele błędów, ale zaszło również wiele zmian koncepcyjnych w działaniu systemu. Napisanych zostało ponad 5000 nowych API do wykorzystania przez programistów aplikacji.

Wraz z wprowadzeniem na rynek Android Lollipop, interfejs użytkownika został w bardzo ładny i elegancki sposób odświeżony – trend material design jest już tutaj bardzo wyraźnie widoczny. W kolejnej wersji 5.1 i najnowszej 6.0 wiele funkcjonalności dopracowano i kolejno dopieszczono efektownymi animacjami. Całość sprawia wrażenie przejrzystego, nowoczesnego systemu, przyjaznego użytkownikowi.

Android Marshmallow - App permissions
Android Marshmallow - App permissions

Android Marshmallow - Logo
Android Marshmallow - Logo

Android Marshmallow - Overview menu
Android Marshmallow - Overview menu


Runtime permissions


W poprzednich wersjach systemu Android przed zainstalowaniem aplikacji należało udzielić jej pozwoleń na dostęp do pewnych zasobów naszego smartphone’a.

W Marshmallow zostało to rozwiązane w nieco inny sposób - aplikacja prosi o pozwolenie na skorzystanie z zasobu dopiero, gdy musi z niego skorzystać, aby zrealizować zlecone przez użytkownika zadanie.

Jest to przydatne dla mniej, lub rzadziej wykorzystywanych zasobów. Np. dostęp do nagrywania dźwięku z mikrofonu w aplikacji Keep. Aplikacja zapyta o pozwolenie dopiero, gdy będziesz chciał pierwszy raz z tego skorzystać i nagrać notatkę głosową.

Wraz z tą funkcjonalnością dodana została również możliwość późniejszej edycji każdego pozwolenia udzielonego aplikacji w ustawieniach.

Aplikacje stworzone dla Marshmallow, mogą pytać o pozwolenie w każdym czasie. Starsze aplikacje, będą zachowywać się jak dotychczas i pytać o zgodę na wszystkie pozwolenia przy instalacji, ale w obu przypadkach możliwe będzie późniejsze edytowanie tych pozwoleń w ustawieniach.

Android Marshmallow runtime permissions


Voice interactions, czyli polecenia głosowe


Za pomocą głosu możliwe będzie wydawanie komend i sterowanie swoim urządzeniem z zainstalowaną najnowszą wersją Androida. Dzięki Google Now, w prosty sposób, za pomocą głosu, będziemy mogli między innymi wyszukiwać informacje, pytać o wskazówki dotarcia do celu, lub tworzenie przypomnień. Sprytne.


2 API dla odcisków palców


Wraz z szóstą wersją Androida, dodana została natywna obsługa sensorów odczytujących linie papilarne.


Zwiększona żywotność baterii


Wprowadzonych zostało kilka nowych mechanizmów mających na celu wydłużenie czasu działania urządzenia z Androidem na baterii.

Na czym ma to polegać? Na podstawie pomiarów akcelerometru, urządzenie ma wykryć, czy leży gdzieś na półce, lub w szufladzie, dokładnie po to aby stwierdzić, czy może być w najbliższym czasie używane. Gdy nie dotykamy naszego urządzenia, staje się ono nieaktywne. W takim stanie zadania wywoływane cyklicznie przez aplikacje są wykonywane w większych odstępach czasu.


GCM Network Manager


GCM Network Manager to kolejny mechanizm służący do oszczędzania energii urządzenia. Polega to mniej więcej na optymalizacji i kolejkowaniu różnych zadań wykonywanych zwykle w tle.


App standby


Często jest tak, że instalujemy aplikację i po pewnym czasie o niej zapominamy, nudzi nam się, lub nie jest już nam potrzebna. Mechanizm App standby, wykrywa takie aplikacje i przełącza je w tryb uśpienia.

Aplikacje, które od dłuższego czasu są nie używane po jakimś czasie tracą dostęp do wifi i nie będą mogły wykonywać pewnych zadań w tle.

Aplikacja będzie drzemać do czasu aż ponownie jej użyjesz, lub aż urządzenie nie zostanie podłączone do prądu.


Backup


Domyślnie wszystkie dane aplikacji oraz ustawienia zostaną automatycznie zapisane i będą przechowywane na koncie użytkownika Google.

W ustawieniach będzie możliwość wybrania tego co dokładnie ma być przechowywane.

Inne drobne poprawki:
  • zmieniona została animacja podczas ładowania systemu,
  • ikony w powiadomieniach,
  • udoskonalony mechanizm zaznaczanie tekstu.



środa, 26 sierpnia 2015

Android Lollipop - Co nowego w wersji 5.1? Opisujemy 6 najlepszych funkcji w aktualizacji


Na początku marca wydana została pierwsza duża poprawka dla najnowszej wersji Android Lollipop, która oznaczona została symbolem 5.1. Co przyniosło uaktualnienie, czym różni się wersja 5.0 od nowszej?

Na pierwszy rzut oka jest to ten sam system. Lollipop 5.0 był największą i jednocześnie najbardziej ambitną aktualizacją systemu Android. Wraz z nią wprowadzony został Material Design dla interfejsu użytkownika. W wersji 5.1 natomiast, wszystko zdaje się być jeszcze bardziej dopieszczone. System został ożywiony masą płynnych przejść i efektownych animacji.

Uaktualnienie 5.1 to zbiór wielu poprawek dla mniejszych problemów, jednak oprócz poprawy stabilności działania systemu i jego wydajności dodanych zostało także kilka nowych bardzo ciekawych funkcji.

Logo Android Lollipop 5.1

 

Jeszcze lepsze szybkie opcje dla Wi-Fi i Bluetooth

Już w ostatnim artykule na temat Androida 5.0 wspominaliśmy, że podręczny panel powiadomień, oraz panel szybkiego dostępu do opcji zostały niemal całkowicie zmienione w nowej wersji. A w kolejnej - 5.1, dodanych zostało jeszcze kilka ulepszeń.

Teraz możliwe jest wybranie preferowanej do połączenia sieci Wi-Fi z poziomu obszaru powiadomień, (bez konieczności wchodzenia do opcji). Wystarczy kliknąć pod ikoną połączenia (kliknięcie na niej spowoduje wyłączenie Wi-Fi/BlueTooth), aby zobaczyć listę sieci, albo urządzeń w przypadku połączenia Bluetooth, znajdujących się w zasięgu naszego urządzenia z Androidem.

Urządzenia z zainstalowanym Androidem 5.1, od teraz będą w stanie zapamiętywać te sieci Wi-Fi, które miały wcześniej ograniczoną łączność lub brak połączenia z Internetem. Dzięki temu w przyszłości nasze urządzenie nie będzie się automatycznie łączyć z tymi sieciami. To rozwiązanie będzie użyteczne na przykład podczas rozmowy VoIP. Dzięki temu będzie znacznie mniejsza szansa na przerwanie połączenia przez połączenie się z kiepską siecią.

Przypomnijmy o mechanizmie Androida, który pozwala na płynne przełączanie się między sieciami znajdującymi się w zasięgu, dzięki czemu szansa na utratę połączenia również powinna być mniejsza.

Lollipop ekran główny
Ekran główny Lollipop 5.1

Android 5.1 Lollipop - panel szybkich opcji
Panel szybkich opcji w 5.1

Android 5.1 Lollipop - lista sieci WiFi z poziomu szybkich opcji
Lista sieci WiFi z poziomu szybkich opcji


Lepsze profile dźwiękowe


Android 5.1 to także ulepszone kontrolki do obsługi dźwięku, oraz ulepszone profile dźwiękowe. Suwak do obsługi głośności można teraz przesuwać palcem, a obok suwaka dodano ikonę dzięki której możemy szybko przełączać się między trybem dzwonek / wibracje.
Oprócz tego mamy 3 profile dźwiękowe: cichy, priorytet, oraz dźwięk.
  • Profil "Cichy" pozwala na całkowite wyciszenie telefonu, na wybrany przez nas okres czasu, lub aż do najbliższego dźwięku budzika.
  • Profil "Priorytetowy" oferuje najwięcej opcji konfiguracyjnych. W tym profilu możemy ustalić czas (np. wybrane dni tygodnia, lub godziny), lub zdarzenie (np. budzik, połączenia) które zakończy działanie tego profilu i przywróci nasze urządzenie do profilu dźwiękowego. Możemy ustawić, czy w czasie działania trybu priorytetowego chcemy otrzymywać przypomnienia i informacje o wydarzeniach, odbierać połączenia lub wiadomości (można także wybrać kontakty od których chcemy otrzymywać połączenia).
  • Profil „Dźwięk” to normalny tryb dźwiękowy, jedyne co na niego działa to suwak głośności. ;-)
Lollipop 5.1 Profile dźwiękowe
Ulepszone profile dźwiękowe
Ustawienia powiadomień w Androidzie 5.1
Ustawienia dźwięków i powiadomień


Obsługa Dual SIM


Android 5.1 pozwala na użycie dwóch kart SIM na urządzeniach wyposażonych w dwa sloty na karty SIM.


NuPlayer - nowy podstawowy player w Androidzie


Wraz z aktualizacją Lollipop 5.1, Google zaprezentowało swój nowy, szybszy i bardziej wydajny player NuPlayer, który od teraz zastąpi swój starszy odpowiednik AwesomePlayer.

Android Lollipops NuPlayer
NuPlayer


Rozmowy w HD


Od tej aktualizacji na wszystkich kompatybilnych urządzeniach z wersją Androida minimum 5.1, możliwe będzie wykonywanie połączeń w technologii VoLTE, znanej także jako HD Voice lub HD Calling.

Dzięki tej technologii połączenia powinny być „czystsze”.


Zwiększone bezpieczeństwo urządzeń

Device Pritection, to mechanizm, który zablokuje zgubione lub skradzione urządzenie do czasu, aż podasz hasło do konta Google używanego wcześniej na urządzeniu. Bez hasła niemożliwe będzie zresetowane urządzenia do ustawień fabrycznych.

wtorek, 25 sierpnia 2015

Android Lollipop 5.0

Lollipop to nazwa najnowszej aktualizacji systemu Android opatrzona numerem 5.0. System został zaprezentowany blisko rok temu (październik 2014) i była to jedna z największych i najbardziej ambitnych aktualizacji tego systemu.


Co nowego w Android Lollipop?


Dzięki zastosowaniu swojego najnowszego trendu przy projektowaniu interfejsu użytkownika, Android Lollipop ma stać się systemem „pasującym” do każdego urządzenia, oraz będzie zachowywał spójny wygląd niezależnie od wielkości wyświetlacza.

Material Design obecnie jest wykorzystywany w większości produktów Google i to nie tylko na platformach mobilnych, jest wyraźnie widoczny w odświeżonym interfejsie Lollipop.


Obszar powiadomień


Prawdopodobnie największą przebudowę przeszło podręczne menu powiadomień, oraz panel szybkiego dostępu do opcji. Oba możemy „wyciągnąć” z górnej krawędzi ekranu. Najpierw pokażą nam się powiadomienia, a jeżeli jeszcze raz „złapiemy” owy panel i będziemy ciągnąć niżej, pokaże się również podręczny panel z opcjami. Możliwe jest otworzenie panelu opcji jednym pociągnięciem – wystarczy użyć jednocześnie dwóch palców.

Odświeżony został również ekran blokady ekranu, który nie będzie wspierał już widgetów.

Android 5.0 Lollipop Ekran startowy, ekraz z minigry


Otwarte i niedawno używane aplikacje


Poza lekkim liftingiem wizualnym, wprowadzona została również nowa koncepcja związana z uruchamianiem wielu aplikacji na urządzeniu z systemem Lollipop. Zamiast przechowywać zwykłą listę ostatnio używanych aplikacji, teraz możliwe jest wrócenie do strony, czy też karty na której skończyliśmy. Przykładowo karty otwarte w Google Chrome będą pokazywane jako oddzielne karty, więc możliwy będzie szybki powrót do karty na której skończyliśmy przeglądanie Internetu.

Android 5.0 Lollipop - opcje powiadomień, ostatnio używane aplikacje i profile użytkowników


Bateria


Nowa wersja systemu Android 5.0 Lollipop, to nie tylko zmiany w interfejsie. System został zoptymalizowany pod wieloma względami, w tym dodanych zostało kilka mechanizmów wydłużających działania urządzenia na baterii. Jak podaje Google, opracowana funkcja pomoże wydłużyć ten czas nawet o 90 min.

Android 5.0 Lollipop wyszukiwanie opcji, battery saver

Profile użytkowników


Kolejną nowością wprowadzoną w tej wersji Androida są profile użytkowników. Dzięki temu możliwe jest zalogowanie się na swoim koncie użytkownika na innym urządzeniu. Po zalogowaniu możliwe jest nie tylko wykonywanie połączeń, ale także uzyskanie dostępu do swoich wiadomości, zdjęć itd.

Szybszy Android


W systemie zaimplementowane zostało zupełnie nowe środowisko wykonawcze („ART”), które poprawia wydajność i szybkość reagowania aplikacji. Dzięki temu system będzie działał bardziej płynnie, nawet w bardzo złożonych i bogatych wizualnie aplikacjach.

Jak twierdzi Google, system Lollipop to nawet czterokrotny wzrost wydajności!


Android na PC


Dzięki wsparciu dla urządzeń 64-bitowych, takich jak Nexus 9, Android Lollipop może obsługiwać procesory klasy desktopowej.


Dziesiątki nowych i ulepszonych funkcji:
  • Ekran ostatniej aktywności z zadaniami.
  • Wygodniejsze i bezpieczniejsze płatności.
  • Wsparcie dla drukowania: podgląd wydruku i obsługa zakresu stron.
  • Szybsze odnajdywanie opcji w systemie dzięki możliwości ich wyszukiwania.
  • Zmieniony sposób wyświetlania stanu baterii, Bluetootha, użycia danych i ustawień Wi-Fi oraz nowe funkcje wyszukiwania w ustawieniach.
  • Aplikacja latarki w urządzeniach z aparatem wyposażonym w lampę błyskową.
  • Zarządzanie powiadomieniami na ekranie blokady ekranu.
  • Przewidywanie czasu działania na baterii.
  • Przypinanie ekranu aplikacji.
  • Wsparcie urządzeń audio dla wejścia/wyjścia.
  • Wygodna migracja danych między urządzeniami dzięki Tap&Go.
  • Historia ostatnio używanych aplikacji dostępna nawet po restarcie urządzenia.