Ostatnio chciałem uzyskać zrzut ekranu z telefonu z systemem Android (na potrzebny wpisu na blogu) i po krótkim poszukiwaniu okazało się to dużo prostsze niż myślałem.
Krok 1: konfiguracja komputera
W sytuacji gdy używamy Linuksa, może być konieczna odpowiednia konfiguracja, opisana w tym wpisie: Dostęp do Internetu za pomocą HTC G1 z systemem Android (Proxoid). Ja przynajmniej ma tak skonfigurowanego demona UDEV, zawsze można spróbować bez tych kroków, jeżeli zadziała, to proszę o sygnał.
Dla przypomnienia, oto co trzeba zrobić:
Pierwszym elementem jest utworzenie pliku /etc/udev/rules.d/11-android.rules
o następującej zawartości:
1 2 | SUBSYSTEMS=="usb", SYSFS{idVendor}=="0bb4", SYSFS{idProduct}=="0c02", MODE="0666", OWNER="nazwa użytkownika" SUBSYSTEMS=="usb", SYSFS{idVendor}=="0bb4", SYSFS{idProduct}=="0c01", MODE="0666", OWNER="nazwa użytkownika" |
W przypadku jądra 2.6.32 powyższy wpis sprawiał mi problemy (telefon był ciągle wykrywany, nagle przestawał być widziany). Dopiero zmiana tego wpisu na poniższy rozwiązała problemy:
1 2 | SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0c01", ENV{ACL_MANAGE}="1", MODE="0666", OWNER="nazwa użytkownika" SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0c02", ENV{ACL_MANAGE}="1", MODE="0666", OWNER="nazwa użytkownika" |
Swoją drogą, wg. komunikatów podawanych przez jądro to użycie atrybuty SYSFS
nie jest zalecane przynajmniej od wersji 2.6.32, zamiast tego poleca się użycie właśnie atrybutu ATTR
.
Należy wpisać swoją nazwę użytkownika po deklaracji OWNER
. Teraz restart demona:
I można podłączać telefon. Po wydaniu poniższego polecenia powinniśmy otrzymać podobny komunikat:
Bus 001 Device 017: ID 0bb4:0c02 High Tech Computer Corp.
Krok 2: Pobranie SDK dla telefonu
Ze strony Googla należy pobrać odpowiednie SDK dla telefonu kompatybilne z używanym systemem operacyjnym na komputerze biurkowym: http://developer.android.com/sdk/index.html. Pobranie SDK należy rozkopresować w jakimś katalogu.
Ja korzystam z SDK w wersji 1.6_r1.
Krok 3: Konfiguracja telefonu
Ostatnim elementem związanym z konfiguracją sprzętu jest włączenie trybu „USB debugging”. Czyli z MENU
wybrać opcję Settings->Applications->Development
, i zaznaczyć opcję USB debugging
.
Krok 4: Zrzut ekranu
Po tych krokach związanych z konfiguracją telefonu i komputera pozostaje już tylko uruchominie aplikacji o nazwie Dalvik Debug Monitor i do dzieła. Czyli należy wejść do katalogu z SDK do telefonu, następnie do podkatalogu tools
i uruchomić aplikację ddms
.
Jeżeli aplikacja pomyślnie wykryje telefon (powinien pojawić się w okienku Name
) to możemy z menu wybrać pozycję Device->Screen capture
, co spowoduje zrobienie zrzutu ekranu telefonu. Pozostaje teraz tylko zapisać obrazek.