Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

Kilka słów o custom romach na Androidzie

Niewątpliwie jedną z najlepszych cech Androida, odróżniającą go od iPhone, jest latwość modyfikowania oprogramowania systemowego. Nie mam tu na myśli jedynie poszczególnych aplikacji, ale najgłębszych partii systemu operacyjnego, jak różnego rodzaju frameworki czy nawet kernel.

Jak wiadomo czysty Android prawie nie występuje, jedynym obecnie sprzętem posiadającym zupełnie “waniliowe” wydanie tego systemu jest Nexus S. Producenci dodają swoje aplikacje, zmieniają powłokę (tzw. launcher), często ingerują również w kernel - przykładem może być uparte stosowanie sytstemu plików RFS przez Samsunga. Nie ma problemu jeżeli te poprawki są na korzyść działania urządzeń, czego wybitnym przykładem jest Sense UI produkowane przez HTC. Ponieważ posiadam Samsunga Galaxy S jestem jednak skazany na niskie gusta koreańskiego producenta. Nie udostępnia on domyślnego w Androidzie launchera (podstawowy interfejs użytkownika), a na jego miejsce stręczy TouchWiz. Podobnie rzecz ma się z lockscreenem (interfejs aplikacji do zarządzania blokady telefonu) czy animacjami włączania i zamykania systemu. Przykłady można byłoby mnożyć, ale przecież nie o to chodzi.

W początkach mojego użytkowania Galaxy S trzymałem się bardzo blisko stockowych (udostępnianych przez Samsunga) romów (oprogramowania systemowego). Pojawił się jednak problem gdy częśc świata ptrzymała już aktualizację z Android 2.1 (Eclair) do Android 2.2.1 (Froyo). Samsung udostępnia aktualizację poprzez program Kies, który po pierwsze działa jedynie na Windowsie, a po drugie służy do wszystkiego, a więc siłą rzeczy jest zupełnie do niczego. Swoją drogą doskonala sprawdza się tutaj reguła KISS (Keep it simple, stupid). Otóż skoro Wielka Brytania otrzymała już oryginalne samsungowe Froyo, zawierające język polski, a Europa Centralna jeszcze nie, pozostawały trzy wyjścia: czekać; oszukać Kiesa, że znajduję się w Wielkiej Brytanii; lub po prostu zainstalować tegoż Androida poprzez oprogramowanie serwisowe Samsunga, czyli mówiąc po ludzku samodzielnie zrobić flash romu :-)

Zdecydowałem się na drugie wyjście, za pomocą prostego skryptu oszukałem program Kies i otrzymałem Froyo z błogosławieństwem Samsunga. Jednakże po kilku dniach coś zepsułem i chciałem po raz kolejny wgrać system operacyjny. Oczywiście musiałbym raz jeszcze pobierać całe oprogramowanie przez Kiesa, a przewidując, że nie jest to ostatni raz gdy coś pójdzie nie tak, postanowiłem zastosować bardziej zaawansowane metody.

Otóż bardzo mili serwisanci Samsunga, skupieni wokół samfirmware.com udostępniają na bieżąco każdą wersję Androida wyprodukowaną przez Samsunga wraz z oprogramowaniem do samodzielnego flashowania tych systemów operacyjnych. Korzystanie z niego jest dziecinnie proste i po lekturze forum, każdy jest w stanie się nim posłużyć. I tak się zaczęło... Wgrywając na bieżąco wszelkie aktualizacje dochodzi się do znacznej wprawy. A dokładnie w ten sam sposób można wgrywać zmodyfikowane kernele lub w ogóle zmodyfikowany system.

Otóż załóżmy, że znudził nam się ekran blokowania (lockscreen) udostępniony przez Samsunga. Jest to aplikacja głęboko osadzona w systemie, więc do jej zmiany będą potrzebne uprawnienia roota. Ponadto w celach optymalizacji wiele takich aplikacji systemowych jest wrzuconych bezpośrednio w cache maszyny wirtualnej Javy, tzw. Dalvika. Dokopanie się do tych miejsc systemu operacyjnego wymaga bardzo trudnej operacji deodexowania systemu. Nawet jeżeli to zrobimy, to co będzie jeżeli znów będziemy chcieli zmienić ten lockscreen? Albo trzeba sobie będzie dopisać w kodzie systemu menu do zmiany, albo raz jeszcze przeprowadzać podmianę aplikacji systemowej.

Łatwo się domyślić, że przy wielu milionach użytkowników Androida, jeżeli każdy chciałby wkonywać tę pracę samodzielnie, to oznaczałoby wynajdywanie koła na nowo przez kilkadziesiąt milionów godzin pracy łącznie. I tu powstała nisza dla custom romów, czyli samodzielnie przygotowanych przez zaawansowanycbh użytkowników wersji Androida. Z reguły custom romy zawierają to wszystko, czego dusza może zapragnąć: są zrootowane, system jest po deodexie, zawierają miłe dodatki jak na przykład pół-przeźroczystość w elementach interfejsu, często umożliwiają konwersję systemu plików na ext4 (np. Voodoo lagfix). Wszystkie liczące się custom romy są udostępniane, opisywane i recenzowe na forum XDA-Developers.

Bardzo ciekawym rozwiązaniem jest tzw. Kuchenka Romów. Jest to specjalna aplikacja webowa utworzona przez Doca i Stefunela służaca do samodzielnego komponowania (gotowania...) romów. Możemy sami wybrać poszczególne kernele, aplikacje, motyw, launcher, animację startową i wiele innych szczegółow systemu. Wystarczy pobrać wygenerowany plik i zainstalować go. Z Kuchenką można się zapoznać na romkitchen.org.

Osobiście korzystam z Darky Rom, który jest obecnie chyba najpopularniejszym custom romem na Galaxy S. Poniżej małe porównanie standardowego samsungowego TouchWiz i Gingerbread Launcher z właśnie romu Darkiego.

Nudny lockscreen w Samsung TouchWiz 3.0

Rotary Lockscreen na Darky ROM

Gingerbread launcher na Darky ROM Z wysuniętym menu podręcznym

Czy warto korzystać z custom romów? Na pewno warto, ale wyłącznie ze stabilnych wersji od sprawdzonych deweloperów. Korzyści będzie wiele, od zwiększonego czasu pracy baterii (to chyba jest najbardziej uderzające po porzuceniu firmware od Samsunga) do znacznego przyśpieszenia działania systemu. Polecam!  

Komentarze

0 nowych
BenderBendingRodriguez   6 #1 30.03.2011 17:48

Wpis świetny. Nawet nie ma się o co zapytać czy dodać w komentarzu bo zamieściłeś wszystko :) Wysoki poziom jak zwykle. Dziękuję

Otaq   3 #2 31.03.2011 17:35

Sam zastanawiałem się nad zmianą ROMu w swojej Spice ale prawdę mówiąc boję się, że ją zbrickuję i będę miał przycisk do papieru z ekranem dotykowym :P
Drugą sprawą jest oprogramowanie do flashwania telefonu. Jakiego programu użyłeś? Jest coś do tego celu na Linuksa, bo jak na razie same instalatory exe-ki widziałem?

iacobus   6 #3 03.04.2011 21:35

Jest Heimdall dla Galaxy S, co do Spicy nie wiem, ale poszukaj na XDA

FlashMan   4 #4 04.04.2011 12:21

Program KIES bywa problematyczny i jest właściwie do niczego. Lepszym programem do wgrywania nowych ROM-ów jest Ondine. Dzięki nim są większe szanse na skomunikowanie telefonu z tym programem :)

Największym problemem przy flashowaniu jest zmuszenie kompa i telefonu do komunikacji poprzez podłączanie telefonu do innego portu USB lub podłączenie go do innego komputera. Oczywiście trzeba uprzednio wgrać paczkę sterowników od Samsung (trzeba być gotowym na co najmniej kilkuminutową instalację tych plików).

@Otaq, na 99% nie ma szans, aby ze Spicy zrobić cegłę.

Jeśli masz trudności ze znalezieniem oprogramowania do flashowania, to proponuję postawić wirtualną maszynę z Windows XP (obraz systemu do ściągnięcia za darmo ze strony Microsoft) i w nim wgrywać nowy ROM.