Przydatne narzędzia
Przede wszystkim APK Manager - to w nim będzie się odbywać pierwsza i ostatnia część poradnika, czyli kompilacja i dekompilacja. Przydatny będzie również Notepad++, głownie przy edycji kodu (ze względu na kolorowanie składni) oraz Photoshop lub GIMP (oba programy posiadają dane o kolorach oraz pozwalają te kolory pobrać z różnych obrazów).Dekompilacja plików .APK
Jeżeli próbowaliście wcześniej otwierać pliki XML, to na pewno zauważyliście, że posiadają one sporo dziwnych znaków. Jest to efekt niepoprawnej dekompilacji .APK. Dlatego należy wykonać poniższe punkty, aby dostać się do "czystego" XMLa, bo tylko w nim możliwa jest zmiana parametrów. A więc:- Wybrany plik .APK umieszczamy w folderze "place-apk-here-for-modding" (w APK Manager)
- Uruchamiamy APK Manager
- Wybramy opcję nr. 22 (a w niej plik, który chcemy modyfikować) [select project]
- Wybieramy opcję nr. 9 [decompile]
Tutaj moja uwaga - obserwujcie co robi program. Jeżeli wszystko jest OK, to w folderze z APK Managerem zauważycie nowy projekt:
Przechodzimy do katalogu ../projects/<nazwa apk>/res
Edycja XMLa
Dla przykładu, pokażę wam jak zmienić kolor powiadomień na pasku zadań (Galaxy S):- Otwieramy plik "status_bar_latest_event_content.xml"
- Szukamy odpowiedniej opcji, tutaj "@id/text" oraz "@id/title" (jak sama nazwa mówi, oznaczają one odpowiednio kolor tekstu oraz tytułu).
<TextView android:textSize="18.0sp" android:textStyle="bold" android:textColor="#ff000000" android:ellipsize="marquee" android:id="@id/title" android:paddingLeft="4.0dip" android:fadingEdge="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" android:layout_weight="1.0" />Zaznaczyłem to, co jest nam aktualnie potrzebne.
- android:textStyle oznacza krój czcionki, tutaj bold - pogrubiona
- android:id oznacza dany element, tutaj tytuł powiadomienia
- android:textColor oznacza kolor czcionki i jej przeźroczystość
UWAGA! android:textcolor posiada szczególną budowę! Aby zmienić kolor czcionki, należy zmienić [tutaj] same zera! Na początku zawsze musi być ff, w innym przypadku wysypie wam się ROM! A przynajmniej aplikacja... Przykład koloru: 000000 oznacza kolor czarny, co się zgadza z moim romem - napisy mam czarne w powiadomieniach (dopisek redaktora).
Nie powinniście mieć problemów z edycją poszczególnych elementów, tym bardziej, że są one opisane po angielsku.Kompilacja .APK
Ostatnia część poradnika.- Po edycji, zapisujemy plik .XML i wyłączamy edytor [Notepad++]
- Włączamy (a raczej przywracamy) APK Manager'a
- Wybieramy opcję nr. 11 [Compile] W tym momencie, program buduje od nowa plik .APK ze zmienionymi danymi. Niestety, łatwo tutaj się pomylić o błąd, ale to tylko wina programu. Aby uniknąć niepotrzebnego zamieszania, należy zdecydować, czy jest to plik systemowy czy nie. Doradzałbym zawsze wybierać "yes", a później (przy informacji "Aside your signatures [...]") potwierdzić drugi raz.
- Program zbuduje folder Keep. Przejdźcie do niego [znajduje się on w folderze z APK Manager]
- Usuńcie "resources.arsc"
- Przejdźcie do /res i usuńcie tam pliki, które modyfikowaliście. Tak, KTÓRE MODYFIKOWALIŚCIE.
- W APK Manager wciśnijcie dowolny klawisz Teraz program buduje nowy plik .APK.
- Po kompilacji, przejdźcie do folderu "place-apk-here-for-modding". Zobaczycie tam nowy plik .APK (rozpoczynający się nazwą "unsigned[...]"). Otwórzcie go 7Zipem i skopiujcie z niego XMLy, które zostały edytowane. Skopiowane XMLy wklejcie do starego APK, które miało być modyfikowane.