=== Robsik's Blog on WordPress ===

3 kwietnia 2013

Problemy z android.process.media

Napisałem już tak wiele na temat przygód androidowych i wszystko wskazuje na to, że jest to niekończąca się opowieść. Ponieważ tablet Alcatela zostaje u mnie więc pewnie jeszcze wiele będę miał do opowiedzenia. Dla przykładu podam tylko temat, którym ostatecznie się nie zajmowałem (i chyba dobrze, że się nie zajmowałem): Angry Birds na Adroida. Trafiłem w promocję (chyba?) i zainstalowałem pięć darmowych wersji. Okazało się, że każda uruchamia się tak samo: czarny ekran przez kilka sekund i wraca do systemu. Nie pomaga reinstalacja, przenoszenie na kartę SD, czyszczenie danych itp. Ten problem jednak zostawiłem, jako że byłem już zmęczony poprzednimi zmaganiami.

Po tygodniu spokoju jednak syn zauważył kolejny problem. System co chwilę wywala dość uciążliwy komunikat:
android.process.media został zatrzymany 
O tyle uciążliwy, że pojawia się niemal co klik. Zajrzałem do zasobów internetowych i okazało się, że wszelkie porady sprowadzają się do przywrócenia ustawień fabrycznych (czyli recovery!). Na to akurat kompletnie nie byłem gotowy – świeżo co spędziłem z tym urządzeniem kilkadziesiąt godzin i nie uśmiechało mi się znowu przechodzić to od początku, aby znowu uruchomić kartę SD według mojego „widzi-misia”.


Wyznaczyłem więc sobie nową misję: Naprawa Adroida bez przywracania ustawień fabrycznych.

Okazało się, ze rozwiązanie jest niemal w zasięgu ręki. Po dwóch godzinach testów okazało się, że bezpośrednim winowajcą jest gra „Hugo Retro Mania”, którą to syn bardzo pragnął zainstalować. Gdy już wybierzemy ją do instalowania, wpada ona do kolejki i zaczyna się błyskoteka z tym nieszczęsnym komunikatem.

Rozwiązanie: Wyrzuciłem więc to z kolejki oraz wyczyściłem dane aplikacji „Sklep Google Play” oraz „Usługi Google Play”. Następnie spróbowałem zainstalować inny program i grę – wszystko działało jak należy i problem nie pojawia się więcej. Wystarczy, że znowu spróbuję zainstalować tę grę i problem natychmiast wraca. Trzeba znowu przeczyścić Androida i system wraca do stabilności.

Rozwiązaniem jest więc bardzo ostrożne dobieranie aplikacji i unikanie tych, które sprawiają (lub będą sprawiać) nam problemy. Nie muszę dodawać chyba, że tego zaplanować dobrze się nie da.

Podsumowanie: Jak widać poziom kompatybilności pomiędzy urządzeniami i programami pozostawia bardzo wiele do życzenia. Przydałby się w Adroidzie log, który zapisywałby historię tego co się dzieje w systemie. Ewidentnie mocno trzeba pilnować co instalujemy w jakiej kolejności, aby udało się to później odkręcić.
Just more and more disappointed.

27 marca 2013

Android i bateria cz. II

Ok, teraz czas na nieco trudniejsze tematy (choć tylko z pozoru).

Na pierwszy ogień idzie coś, co wydawałoby się jest dość istotne dla nas: kopia zapasowa (lub jak ktoś woli backup). Android udostępnia taką opcję, która została pomyślana do tworzenia automatycznych kopii zapasowych danych aplikacji, haseł Wi-Fi (po co???) i innych ustawień systemowych. Prze chwilę pochyliłem się nad tą opcją i doszedłem do kilku istotnych i mających daleko idące konsekwencje wniosków. A oto przykład rozważań. Mam aplikację Woblink a wniej blisko 100 książek i każda z nim o wielkości 1-6 MB. Przyjmijmy więc opcję optymistyczną: dane mojej aplikacji wynoszą ok. 100MB. Te dane będą przepychane na serwery Google. Inna aplikacja: Audioteka. Tu dane aplikacji to ok. 4-5GB. Inna aplikacja: Nexto – tu dane aplikacji to ok. 2-3GB. Jeszcze inna: SuperMemo – dane alikacji ok 1GB. I te wszystkie dane muszą być przepchnięte na serwery Google. To dość dużo i raczej zajmnie to kilka dni. Przez te kilka dni nasz Internet będzie umierał a tablet nie da rady przeżyć nawet jednego dnia bez pełnego (lub ciągłego) ładowania. Ale jest coś jeszcze ważniejszego: ja te dane w każdej chwili mogę ponownie pobrać z serwera Woblinka, Audioteki lub Nexto – więc po co mi właściwie ten backup? Dane postępów nauki SuperMemo także mogę wysłać na serwer i dowolnej chwili to odtworzyć. Czyli także nie potrzebuję backupu danych aplikacji. Maile? One są na serwerze! Hasła Wi-Fi? Ta! I co jeszcze! To lepiej mieć w głowie (w ostateczności na jakiejś kartce).

Z mojego punktu widzenia jest to opcja kompletnie bezużyteczna (rozumiem, że znajdą się Ci, którzy mają inne zdanie w tym temacie – ok, wyrażam tu wyraźnie SWOJĄ opinię). Ja więc ją wyłączyłem oszczędzając tym samym oczywiście zasoby utrzymywane w baterii.



Kolejny temat bardzo istotny, to Synchronizacja z kontem Google. Możemy tam synchronizować nie tylko maile ale i kalendarze, kontakty, zdjęcia itd. Tu zaliczyć także trzeba synchronizację z innymi kontami pocztowymi. Obecnie nikt nie zrezygnuje z tej funkcji – i doskonale to rozumiem. Okazuje się jednak, że tu także można zaoszczędzić nie mało baterii. Chodzi tu przede wszystkim o sposób i częstotliwość synchronizacji. Zakładając, że wyłączam Wi-Fi podczas usypiania urządzenia, nie ma potrzeby aby poczta synchronizowała się automatycznie. Ja pocztę synchronizuję tylko wtedy kiedy tego potrzebuję (wyłączam więc automatyczne synchronizowanie). Jeśli jest to przez Was nie do przyjęcia to pozostaje ustawienie synchronizacji cyklicznej ale np. co 30 minut lub nawet rzadziej. Jest to ten element, który potrafi wydłużyć czas pracy urządzenia pomiędzy ładowaniami nawet o 1-2 godziny(!). Jest więc o co powalczyć i nad czym się zastanawiać.


Kolejny temat, który jest już chyba raczej moją faneberią niż faktycznym oszczędzaniem baterii to ustawienia czasu. Można tu ustawić automatyczny czas – będzie wtedy pobierany z Internetu. Ja to wyłączyłem aby zminimalizować automatyczne połączenia do Internetu przez system Android.


Jak już jesteśmy przy automatycznych łączeniach się do Internetu przez system Android to warto wspomnieć o funkcji automatycznych aktualizacji systemu. Biorąc pod uwagę moje przygody z aktualizacjami Androida (np. na Lark’u, którego wcześniej opisywałem), w przypadku Androida należy zachować nieco wstrzemięźliwości przed instalacją nowych aktualizacji. Mogą sprawić, że przestaną nam działać niektóre programy, lub utrafimy pewną ważną dla nas funkcjonalność urządzenia. Ja więc nie miałem wątpliwości i natychmiast wyłączyłem samowolkę systemu przy aktualizacjach. Sprawdzanie również pozostawiłem w swoich rękach:



W tym miejscu nie wolno pominąć innej funkcji systemu, która sprawia, że bateria roztapia się między palcami a my nawet nie bardzo wiemy kiedy, gdzie i jak. Mowa o automatycznych aktualizacjach zainstalowanych programów. Do końca nie wiem jak to się stało, że wszystkie programy ustawiły się ten tryb, czy tak jest domyślnie, czy ja coś przełączyłem. Musiałem jednak każdy z programów przeklikać aby wyłączyć tę opcję. Dzięki temu programy będą aktualizowane tylko wtedy, gdy ja będę miał na to ochotę a nie wtedy kiedy program o tym zadecyduje. I właściwie nie chodzi tu o samowolę instalacji a o ustawiczne i cykliczne sprawdzanie tych uaktualnień. Łatwo sobie wyobrazić, że im więcej programów tym więcej takich połączeń poza naszą kontrolą a to z kolei przekłada się na zużycie baterii.



Nie wolno także pominąć samego sklepu Play. Okazuje się, że też kilka ciekawych opcji, które pomogą nam oszczędzać baterie. Z pewnością nie są to już opcje spektakularne, ale grosik do grosika i efekty mamy murowane! Warto z pewnością wyłączyć przynajmniej „Autoaktualizowanie”.


No i na koniec jeszcze takie truizmy jak zamykanie aplikacji, z których nie korzystamy a podejrzewamy, że mogą zjadać nieco zasobów systemowych. Jak to zrobić? To już chyba każdy potrafi: wyświetlamy uruchomione programy i przyciskamy na chwilę na aplikacji aż zobaczymy nowe menu, z którego wybieramy „Usuń z listy”.


I jak już jesteśmy przy temacie programów to muszę wspomnieć o jeszcze jednym. Okazuje się, że są programy, które mogą spowalniać pracę naszego tabletu. Spowolnienie oczywiście wynika z zapotrzebowania na zasoby systemowe w tym także baterię. Warto więc czytać fora, rozmawiać z innymi użytkownikami aby wiedzieć, które programy mogą sprawiać nam takie problemy. Czasami wystarczy też nasza czujność. Gdy po instalacji jakiegoś programu zauważamy, że coś się zmieniło na gorzej, to warto ten program odinstalować lub po prostu przeprowadzić testy. Takim znanym przykładem jest Task Killer, który nieskonfigurowany potrafi spowolnić nasz sprzęt i objeść z cennej baterii. W moim przypadku takim programem był program zainstalowany po rootowaniu urządzenia (ten z chińskimi krzaczkami). Warto więc zwracać baczną uwagę na to co instalujemy i jak używamy.

Takim programami, które podstępnie mogą ograbić nas z baterii są także niektóre widżety. Tu także można „nabyć” widżet, który działa nie koniecznie tak jak byśmy tego oczekiwali. Zwłaszcza te, które wymagają ciągłego aktualizowania swojego statusu w oparciu o połączenia sieciowe.




I na szarym końcu pozostaje temat, który dotyczy wszystkich baterii (w każdym urządzeniu): nie zostawiajmy naszych urządzeń (wraz z bateriami) na słońcu lub na czymś ciepłym. Wysoka temperatura mocno skraca żywotność naszej baterii już po pierwszej godzinie takiego intensywnego naświetlania.


Podsumowanie 

Jak widać powyżej, tematów, gdzie możemy poszukać oszczędności w baterii jest dość dużo. Co ciekawsze, zdaję sobie sprawę, że ten artykuł nie wyczerpuje wszystkich możliwości. Doświadczenia moje pokazały także, że dopiero uważna konfiguracja daje akceptowalne efekty. Zdecydowanie nie rozumiem, dlaczego tych opcji nie dało się zebrać w jedno miejsce konfiguracji (nawet kosztem dublowania niektórych opcji). To mogło by przybliżyć system Android tym mniej wtajemniczonym, którzy kupują i chcą tego po prostu używać.

25 marca 2013

Android i bateria cz. I

Do tej pory nie spotykałem się z takimi problemami. No może troszeczkę naginam tę teorię, bo Lark 70.3GPS dostarczył mi wielu rozczarowań – również w temacie baterii. Tu wprawdzie zrzuciłem to na barki taniego sprzętu, ale jak się okazuje to stwierdzenie nie musiało być prawdziwe. Moje doświadczenia na tym polu opisuję w oparciu o mój ostatni nabytek Alcatel One Touch Evo7.

Po bojach z instalacją karty SD wg moich planów (czytaj poprzednie posty), przyszedł czas na „normalne” użytkowanie tabletu. Zainstalowałem swoje programy (głównie do czytania książek i słuchania audiobooków) oraz kilka dla dzieci (gry, programy edukacyjne itp.). I wtedy przyszedł czas na kolejne rozczarowania. Bateria urządzenia wyjątkowo szybko uciekała. Na początku nie zwracałem na to uwagi, ale po dwóch dobach przekonałem się, że to jednak nie jest tak do końca normalne. Urządzenie wieczorem zostawione ze stanem baterii 60-80% rano było kompletnie rozładowane! I tak było każdej nocy. Producent podaje 200 godzin czuwania – w moim przypadku nie osiągnąłem nawet 20 (widać, że nie był w tym czasie ładowany ani używany (ekran włączany był by sprawdzać stan baterii):




Znowu sięgnąłem po zasoby internetowe i okazało się, że jest to kolejny temat, który mocno przewija się przez fora. Co więcej: wielu fachowców i znawców tego systemu próbowało udowodnić, że jest to wina samych baterii, które to urządzenie zasilają. Z grubsza sprawa wyglądała więc beznadziejnie.
Następnie trafiłem na kilka artykułów z cyklu „jak oszczędzać baterię na urządzeniach z Androidem”. W pierwszej chwili wydawało się to zwykłym bełkotem marketingowym ale po wielu próbach okazało się, że jest zawartych wiele istotnych wskazówek. Zgromadziłem je wszystkie, zastosowałem na swoich urządzeniu i… oto rezultat: w nocy „zjechało” tylko 3% baterii!!!



Czyli jednak się da!

Opcji oszczędzających energię jest wiele. Smutnym jednak
jest, że nie są one zgromadzone w jednym miejscu (tak jak np. jest to w
Windows). Trzeba znowu zdobyć nie małą wiedzę, wiele się oczytać a potem
skompilować tę wiedzę, aby zastosować na swoim urządzeniu – frustrujące!
Dlaczego nie można tego uprościć? To już jest zagadka Poliszynela.

Zostawmy jednak polityczne sprawy i skupmy się na tym
jak udało mi się rozpocząć nowe życie polegające na oszczędzaniu baterii w
tablecie. 


Oszczędzanie baterii w tablecie:

Zacznijmy od oczywistych tematów. Na pierwszy plan wysuwa się wyświetlacz. Z reguły to on pożera gro naszej baterii. Warto więc ustawić jasność tak, aby była jak najmniejsza ale nadal komfortowa do pracy, zabawy lub nauki. Ustawienie poniżej granicy komfortu oczywiście pozbawia nas frajdy korzystania z urządzenia. Dla mojego urządzenia Alcatel ta optymalna dla mnie jasność jest w okolicach 40%. To już daje niezłe oszczędności na początek. Należy jednak pamiętać, że te oszczędności dotyczą samego czasu pracy na urządzeniu.

Kolejny temat to usługi lokalizacyjne. W moim przypadku było troszkę łatwiej, bo mój Alcatel ma pracować tylko w domu, więc właściwie usługi lokalizacyjne są zbyteczne. Wyłączyłem więc wszystkie: Usługa lokalizacyjna, Satelity GPS, Lokalizacja w sieci jak i A-GPS.



Kolejny dość oczywisty temat to Bluetooth. Jest to ta część urządzenia, którą bardzo rzadko używamy (raczej rzadko) i warto aby była wyłączona, jako że jest dość pazerna na zasoby baterii. Do wyżej wspomnianych opcji oczywiście jest widżet, przy pomocy którego mamy szybki dostęp do tych opcji. Włączanie i wyłączenie tych opcji w Androdzie jest więc szybkie i bezstresowe. Tym bardziej zachęcam korzystania z tak bezpośredniego zarządzania energią w urządzeniu.


Nie wspomniałem jeszcze o tak ważnym urządzeniu jak Wi-Fi. Jak widać z widżetu można to także łatwo włączać i wyłączać. Warto z tego korzystać, choć jest pewna opcja, która dość skutecznie pozwala zaoszczędzić energię na karcie bezprzewodowej. Jest to ustawienie, o którym wcześniej nie słyszałem i chyba sam z siebie bym tam nie trafił. Mowa o funkcji, która wraz z usypianiem urządzenia usypia także kartę bezprzewodową. Mowa o „Wi-Fi włączone w trybie uśpienia”. Warto wybrać opcję „Nigdy” – wtedy gdy usypiamy nasze urządzenie Wi-Fi także jest usypiane. Ma to wprawdzie tę wadę, że po gdy urządzenie się usypia, to przerywane jest wszelkie transfery i połączenia. Te większe tematy musimy więc przypilnować.


I jak już jesteśmy przy uśpieniu, to warto także ustawić w miarę krótki czas usypiania urządzenia bez aktywności. Osobiście mam wyuczony nawyk wyłączania (usypiania) urządzenia natychmiast po tym jak go odkładam, ale nie wszyscy są tak zdyscyplinowani i warto aby tablet nie leżał włączony bezczynnie – bateria z pewnością szybciej ucieka niż w stanie uśpienia. Ja mam z reguły ustawione 2 minuty, ale wielu zaleca nawet 30 sekund. Tak krótki czas jednak w niektórych aplikacjach może sprawiać problemy przedwczesnym wygaszaniem ekranu.

C.D.N.

22 marca 2013

Alcatel One Touch Evo7 – czyli jak dodać kartę SD cz. III

Czas na trzecią część moich zmagań z Androidem i kartą SD w pierwszym planie. Dziś obiecuję ostateczne rozwiązanie, wiec zapraszam do lektury.

Nowa misja przydzielona: sprawić aby moja karta SD była widoczna jako „external storage” i pracowała zgodnie z moimi założeniami.

Okazuje się, że jest to dość powszechny problem. Niemal już pa kilku minutach znalazłem rozwiązanie: modyfikacja pliku /system/etc/vold.fstab. Tyle, że do tego zadania muszę mieć już roota a w Internecie nie znalazłem gotowego rozwiązania jak zrootować ten model tabletu. Co więcej: znalazłem wiele postów, gdzie wprost pytano jak zrootować to urządzenie. Zadanie zapowiadało się więc mocno ciekawie.

Temat przećwiczyłem różnymi możliwymi rozwiązaniami. Zadziałało dopiero rozwiązanie zamieszczone na forum.android.com.pl przez użytkownika chmurek79. Jego instrukcja była dość uniwersalna i jak sam wskazuje działa głównie na tabletach. (http://forum.android.com.pl/f14/poradnik-sposa-b-na-roota-na-tablecie-i-smartfonie-237218/)

W moim przypadku od razu się nie udało, więc podaję teraz co należy zmodyfikować, aby procedura przedstawiona na forum zadziałała z tabletem Alcatel One Touch Evo7 (znany także jako One Touch T70 – ale chyba mylnie):
  • Aby procedura się powiodła musimy skorzystać z programu ZhuoDaShi w wersji wcześniejszej, czyli 2.2.17. 
  • Podczas rootowania program wyłączy nasz tablet i sam się nie zechce włączyć – musimy go ręcznie włączyć i cierpliwie czekać na zakończenie zadania. 
  • Proces rootowania na tym urządzeniu trwa dość długo – ok. 10 minut. Warto zachować cierpliwość. 
  • Na koniec program ZhuoDaShi zawiesił mi tablet bardzo nieprzyjemnie – widać było tylko czarny ekran oraz to, że ekran z pewnością jest włączony (widać było podświetlenie). Musiałem na siłę wyłączyć urządzenie, ale po restarcie było już wszystko ok.
Teraz mogłem już przystąpić do edycji pliku /system/etc/vold.fstab. To już nie było tak skomplikowane. Trzeba jedynie być bardzo uważnym, aby nie popełnić błędu – błąd może nasz kosztować problem z uruchomieniem systemu Android a wtedy to już mamy nieźle przerąbane.

Poniżej instrukcja co i jak trzeba zmienić:
  • Otwieramy plik vold.fstab i sprawdzamy czy zapisy się zgadzają. Oto przykładowy plik:
## Vold 2.0 Generic fstab

## - San
Mehat (san@android.com)
## ######################### Regular
device mount
#### Format:
dev_mount
## label -
Label for the volume
##
mount_point - Where the volume will be mounted
## part -
Partition # (1 based), or 'auto' for first usable partition.
##
- List of sysfs paths to source devices
###################### ## Example
of a standard sdcard mount for the emulator / Dream
# Mounts
the first usable partition of the specified device
#dev_mount
sdcard /mnt/sdcard auto /devices/platform/goldfish_mmc.0
/devices/platform/msm_sdcc.2/mmc_host/mmc1
dev_mount
flash /mnt/sdcard auto /devices/virtual/mtd/mtd9/mtdblock9
dev_mount
sdcard /mnt/external_sd auto /devices/platform/rk29_sdmmc.0/mmc_host/mmc0
dev_mount
udisk /mnt/usb_storage auto /devices/platform/usb20_host/usb
## Example
of a dual card setup
# dev_mount
left_sdcard /sdcard1 auto /devices/platform/goldfish_mmc.0
/devices/platform/msm_sdcc.2/mmc_host/mmc1
# dev_mount
right_sdcard /sdcard2 auto /devices/platform/goldfish_mmc.1
/devices/platform/msm_sdcc.3/mmc_host/mmc1
 ## Example
of specifying a specific partition for mounts
# dev_mount sdcard /sdcard 2
/devices/platform/goldfish_mmc.0 /devices/platform/msm_sdcc.2/mmc_host/mmc1
  • Nas interesują wyłącznie dwie linijki:
dev_mount
flash /mnt/sdcard auto /devices/virtual/mtd/mtd9/mtdblock9
dev_mount sdcard /mnt/external_sd auto
/devices/platform/rk29_sdmmc.0/mmc_host/mmc0
  • jeżeli wyglądają dokładnie tak, to praca polega tylko na małej podmiance, aby otrzymać taki kod:
dev_mount
flash /mnt/sdcard auto /devices/platform/rk29_sdmmc.0/mmc_host/mmc0
dev_mount
sdcard /mnt/external_sd auto /devices/virtual/mtd/mtd9/mtdblock9
  • Oryginalne linie więc zahashowałem i wstawiłem nowe i w ten sposób uzyskałem taka zawartość:
## Vold 2.0
Generic fstab
## - San
Mehat (san@android.com)
## ######################### Regular
device mount
#### Format:
dev_mount
## label -
Label for the volume
##
mount_point - Where the volume will be mounted
## part -
Partition # (1 based), or 'auto' for first usable partition.
##
- List of sysfs paths to source devices
###################### ## Example
of a standard sdcard mount for the emulator / Dream
# Mounts
the first usable partition of the specified device
#dev_mount
sdcard /mnt/sdcard auto /devices/platform/goldfish_mmc.0
/devices/platform/msm_sdcc.2/mmc_host/mmc1
#dev_mount
flash /mnt/sdcard auto /devices/virtual/mtd/mtd9/mtdblock9
#dev_mount
sdcard /mnt/external_sd auto /devices/platform/rk29_sdmmc.0/mmc_host/mmc0
 dev_mount
flash /mnt/sdcard auto /devices/platform/rk29_sdmmc.0/mmc_host/mmc0
dev_mount
sdcard /mnt/external_sd auto /devices/virtual/mtd/mtd9/mtdblock9
 dev_mount
udisk /mnt/usb_storage auto /devices/platform/usb20_host/usb
## Example
of a dual card setup
# dev_mount
left_sdcard /sdcard1 auto /devices/platform/goldfish_mmc.0
/devices/platform/msm_sdcc.2/mmc_host/mmc1
# dev_mount
right_sdcard /sdcard2 auto /devices/platform/goldfish_mmc.1
/devices/platform/msm_sdcc.3/mmc_host/mmc1
 ## Example
of specifying a specific partition for mounts
# dev_mount sdcard /sdcard 2
/devices/platform/goldfish_mmc.0 /devices/platform/msm_sdcc.2/mmc_host/mmc1
Tak przygotowany plik zapisujemy i restartujemy urządzenie. Dzięki takiej podmianie nasza Pamięć NAND Flash wskakuje na trzecią pozycję a SD na drugą. Dzięki temu „wypychane” programy na kartę SD faktycznie trafiają na kartę SD.

I to był ten moment gdy mogłem powiedzieć, że mój table jest gotowy do pracy. Zainstalowałem Woblink, Nexto Reader oraz Audioteka. Przeniosłem je na kartę SD a następnie zsynchronizowałem. Po synchronizacji miałem już połowę swojej karty zajęte (ponad 7GB). Jak widać bez tych wszystkich operacji nie udałoby mi się to a tablet byłby tylko namiastką czytnika. W tym miejscu nie wspominam już nawet o innych programach typu gry dla dzieci, lub inne programy typu pogoda, kalkulator, nauka języków obcych itd.


Podsumowując. Urządzenia z Android są dość ciekawe. Posiadają wiele wspaniałych programów do pobrania i używania, dużo możliwości w tym możliwość rozbudowy pamięci (czego nie ma właściwie iOS). Aby jednak skorzystać z tych wszystkich dogodności, jak pokazuje przykład moich zmagań, wymaga czasami nieprzeciętnej wiedzy i determinacji. Zasmuca przede wszystkim fakt, że funkcje, których potrzebowałem należały raczej do standardowych – mało wyszukanych. A by je uruchomić trzeba raczej już technicznej ręki. Przestaję się więc dziwić, że Ci, którzy wcześniej mieli do czynienia z iOS’em tak strasznie złorzeczą Android’owi. Często wracają do iOS’a aby nie musieć martwić się tymi wszystkimi technicznymi niuansami.

Android jednak znalazł już swoich zwolenników – podobnie jak systemy Linux (w konfrontacji z systemami Microsoft). To co można zaliczyć do atutów tego systemu to elastyczność i otwartość, dzięki której można bardzo dużo. Rośnie liczba programistów, którzy poprzez modyfikacje systemu wyciskają ze swoich urządzeń siódme poty. W przypadku urządzeń Apple jest to możliwe tylko po tzw. JailBreak’u (czyli już nie na iOS).

Zastanawiam się dalszymi kierunkami rozwoju Android’a. Czy nie można by od razu wypuszczać urządzeń zrootowanych?...

20 marca 2013

Alcatel One Touch Evo7 – czyli jak dodać kartę SD cz. II

W poprzednim odcinku pisałem o tym jak poradzić sobie z uprządkowaniem sterowników USB, gdy nasz PC odmawia już rozpoznawania urządzeń. Dziś więc kontynuuję dalsze zmagania z konfiguracją karty SD w moim nowym urządzeniu. Zaczynamy.

Instrukcja jak ustalić domyślną lokalizację instalacji na kartę SD:

Procedura ta działa na systemie Android w wersji od 2.2. Aby dokonać tej zmiany nie musimy mieć uprawnień root’a do systemu. Do naszego zadania będzie potrzebny Google Android SDK (http://developer.android.com/sdk/index.html) oraz Java JDK (http://www.oracle.com/technetwork/java/javase/downloads/index.html).




Uruchamiamy SDK Manager.exe i upewniamy się, że mamy zainstalowany „Android SDK Platform-tools”:




Jeżeli nie jest zainstalowane, to zaznaczamy check-box’a i wybieramy, aktywny już wtedy, przycisk „Install packages…”.

Teraz czas na przygotowanie naszego tableta: włączamy tryb debugowania USB oraz możliwość instalowania oprogramowania z nieznanych źródeł. Następnie podłączamy urządzenie do komputera.

Odnajdujemy katalog z programem adb.exe (sdk\platform-tools) i uruchamiamy linię poleceń (cmd) przechodząc do znalezionej ścieżki. Teraz sprawdzamy, czy nasz tablet jest widoczny jako podłączone urządzenie, poprzez wydanie komendy:
adb devices 
W wyniku powinniśmy otrzymać listę podłączonych urządzeń (najczęściej jedno ;) tuż pod tekstem „List of devices attached). Jest to miejsce, które może sprawić trochę problemów, jeśli urządzenie nie jest widoczne, ale te tematy omawiałem już wcześniej.

Jeśli nasze urządzenie jest widoczne, to teraz możemy wydać stosowną komendę:
adb shell pm set-install-location 2 
Komenda ta ustawia domyślne miejsce instalacji programów na tzw. zewnętrzną pamięć (external storage), czyli kartę SD. Jeśli chcemy przywrócić ustawienia to wpisujemy:
adb shell pm set-install-location 0 
Od tego momentu możemy instalować programy na kartę SD. Niestety w praktyce nie działa to tak jak prosto – większość programów muszę przenosić na kartę SD w Ustawienia -> Aplikacje:



Problem to już nie jest gdyby nie jeden drobny szczegół:
Urządzenie uznało, że „external storage” to pamięć NAND Flash. Czyli na kartę
SD ciągle nie przenosi!!! Moja karta SD nadal była bez użyteczna a pamięć NAND
Flash zdecydowanie za mała.

C.D.N.