niedziela, 9 czerwca 2013

Android - Własny ROM - Proste Modyfikacje.


Kiedy mamy już przygotowane miejsce pracy możemy śmiało wziąć się za modyfikacje Androida. Tutaj zajmiemy się prostymi modyfikacjami - dodaniem niestandardowych aplikacji, podmianą Boot Animacji, "Podpisaniem Własnego Romu" oraz co nieco o zmianach w wyglądzie.

Pamiętaj Przed wszystkim wykonaj kopię zapasową plików!! Nie biorę odpowiedzialności za ew uszkodzenia. Wszystko robisz na własną odpowiedzialność!!

1) Co potrzebuję?

Możesz spróbować napisać Androida od zera , ściągnąć, edytować AOSP i skompilować na swój telefon by mieć własny rom tylko pytanie - po co? Skoro jesteś początkowym Developerem (tak jak ja) bazuj na instalacyjnych paczkach zip do Recovery. Pamiętaj żeby był to Rom który działa pod Twoim telefonem (co jest rzeczą oczywistą, przypominam żeby nie było sytuacji że nie działa).

Zipem może być Stockowy rom bądź Cyanogenmod, AOSP, AOKP, Paranoid, MIUI itp - co Ci się podoba i czego potrzebujesz. Kiedy już zdecydowaliśmy na którym androidzie nasz Rom będzie bazował rozpakuj go do folderu , do którego będziesz miał pełen dostęp za pomocą 7zip, winrar bądź innego programu tego typu.

2) Dodanie/Usuwanie Aplikacji do Romu.

Dodanie Aplikacji do Androida to rzecz tak bardzo banalna że aż się nie będe rozpisywał. Wiadomo - potrzebujemy plik instalacyjny Aplikacji (rozszerzenie apk, tu polecam zaciekawić się z tematem starego dosyć narzędzia jakim jest Lucky Patcher - pozwala on m. in na stworzenie pliku APK wybranej aplikacji z poziomu telefonu z Androidem) Aplikacje wrzucamy do folderu /system/app . Sytuacja podobna jeśli któreś z aplikacji nie chcemy. Wystarczy ją wtedy usunąć z tego folderu. Uwaga! Aplikacje te są umieszczone na partycji system do którego przypisane atrybuty tylko do odczytu! Jeśli chcemy zezwolić użytkownikowi na Odinstalowanie wrzuconej przez nas aplikacji umieśćmy ją w folderze custpack/app/ .

3) Zmiana animacji startowej.

Szukamy w naszym folderze z romem pliku bootanimation.zip i robimy mu kopie zapasową (jakby coś się spsuło) Kolejny zip w naszym romie który można wypakować i dowolnie zmodyfikować. Obrazki tam wrzucone można podmienić na własne, zapisać , spakować do bootanimation.zip i wrzucić w stare miejsce.
Aby ułatwić życie można przygotować sobie film i skonwertować go na format obrazkowy mając każdą klatkę filmu w pliku. Taką rzecz umożliwia nam narzędzie The Rad Video Tools z którego sam korzystałem tworząc pierwszą boot animacje. Skonwertowane grafiki wrzucamy do zipa razem z  plikiem desc.txt (jest on potwornie ważny gdyż tam jest opisane rozdzielczość wyświetlana i ilość partów bootanimacji - nie spotkałem się jeszcze z więcej niż dwoma partami)

4) Własny wygląd

O tyle dobrze że w Androidzie wszystko to jedna wielka bitmapa (dokładnie png/ 9.png jednak różnica między nimi jest taka że png normalnie zapiszemy a żeby zapisać jako 9.png wystaczy do nazwy obrazka dopisać .9 i zapisać jako png) więc i tu edycja nie jest skomplikowana.

Plik którym się zajmiemy to przede wszystkim framework-res.apk (w androidzie 2.3 i wyżej można wykorzystać też SystemUI.apk). Otwieramy go jak zwykłego zipa i zajmujemy się katalogiem res/drawable-nasza_rozdzielczość (hdpi, ldpi lub nodpi) w nim mamy multum obrazków które możemy otwirzyć , zmodyfikować nawet w paincie (ale bez przesady bo to png i przeźroczystość nie będzie dobrze działać)
Pamiętajmy tylko żeby nie ruszać plików xml. Są one "gotowe do edycji" dopiero po dekompilacji framework-res a ich "wygląd" nas nie zadowoli. 

Po wszystkim zmienione obrazki podmieniamy z tymi z framework-res.apk jak pliki w zwykłym zipie ;)
Można skorzystać z gotowego rozwiązania na http://uot.dakra.lt/ gdzie wrzucamy pliki podane przezemnie i wybieramy co nasz rom ma mieć nowego w wyglądzie. Proste! :D
5) To mój rom!

Własnie zmodyfikowałeś Androida. Teraz można by jakoś zakomunikować userowi że to Twój rom.
Dodajemy wpis do Setting
Bez problemu można zmienić Numer Kompilacji w Systemie wchodząc w Ustawienia -> Informacje o telefonie. 
Aby dodać info o "nas" w build.prop naszego romu szukamy linijki

ro.build.display.id=

I za = wpisujemy nazwę romu.

Info przy instalacji
w folderze \META-INF\com\google\android mamy plik updater-script. Zawiera on instrukcje flashowania romu z poziomu recovery. Lepiej nie tykać się (narazie0 innych funkcji oprócz

ui_print
Które wyświetlają na ekranie to co wpiszemu w środek funkcji. Przy Edycji CM7 dla move dodałem "takie coś"

ui_print("CYANOGENMOD 7 by EWRA Project");
ui_print("edit by CheQ for MOVE");

Dodajemy Analogicznie.


Po wszystkim Tworzymy Zipa w którym znajdują się foldery z naszego romu (struktura musi być dokładnie taka sama) wrzucamy ją na sd , odpalamy Recovery i instalujemy.

W ten oto sposób mamy własny Rom na Androida.
Miłej zabawy! :)

7 komentarzy:

  1. Cześć
    Od niedawna interesuję się Androidem. Umiem zainstalować ROM ale chciałbym zmienić jego wygląd na np. iOS-a. Czy wystarczy że podmienię framework-res.apk z http://forum.xda-developers.com/showthread.php?t=2455873 do CM11 dla Find 5 ? Sorry za tak głupie pytanie, ale ponoć kto pyta nie błądzi.

    OdpowiedzUsuń
  2. Tak jeżeli podmienisz framework-res.apk to podmienisz wygląd całego systemu, tak to działa.

    OdpowiedzUsuń
  3. A jeżeli podmienie Framework-res.apk z innego telefonu, to będzie to działać?

    OdpowiedzUsuń
  4. czy mogę jakoś dodać język np jak jest tylko angielski to sobie go tłumaczę?

    OdpowiedzUsuń
    Odpowiedzi
    1. Możesz. Android ma we frameworku albo SYstemUI folder z plikami języka (nie pamiętam jak się nazywa), tam dodajesz odpowiedni plik i lecisz ;)

      Usuń
  5. 38 year old Community Outreach Specialist Bernadene Hucks, hailing from Mont-Tremblant enjoys watching movies like "Hamlet, Prince of Denmark" and Sewing. Took a trip to Madriu-Perafita-Claror Valley and drives a RX Hybrid. przejsc do mojego bloga

    OdpowiedzUsuń