Kako razstaviti in tematizirati APK-je za Android



Zdaj pritisnite »Zamenjaj vse« in spremenil bo vse @android: color / white, da bo raje uporabil background_holo_dark. Zdaj nadaljujte s pomikanjem po celotnem .xml in poiščite poljubne nize android: background, ki uporabljajo šestnajstiško vrednost (#fffffff) ali kaj drugega kot tisto, s čimer smo jih pravkar zamenjali. Za tiste, ki jih najdete, spremenite nize, da bodo uporabljali novega (abs__background_holo_dark).

Tako smo spremenili ozadje, zdaj bomo spremenili barvo besedila. Torej sledite istemu postopku, kot smo ga pravkar storili, vendar tokrat naredite CTRL + F za “android: textColor”. Dobili boste približno 166 najdenih vrstic.



Videli boste stvari, kot je »android: textColor =' # ffbbbbbb 'itd. Torej, še enkrat poglejte v Colors.xml in morali bomo ugotoviti, katere vrstice zamenjati za barvo besedila.



Android: textColor = '# ffbbbbbb', '#ffffffff', '# ff717171' in '#ffcccccc' lahko vidite na posnetku zaslona in v rezultatih iskanja v opombi ++. Zdaj znova odprite Colors.xml, da poiščete, katero vrstico želimo uporabiti za barvo besedila.



Vrnite se torej na prvi .xml in znova pritisnite CTRL + H za dialog Zamenjaj. Zdaj kopirajte niz 'android: textColor =' # ffbbbbbb 'v zgornji in spodnji del in spremenite spodnjo vrstico v' android: textColor = '@ color / text'.

Zdaj še enkrat poiščite vse vrstice android: textColor in spremenite vse, kar ima v nizu šestnajstiško vrednost. Končno, ko pridete do datoteke styles.xml, želite odstraniti inverzo iz nekaj vrstic, začenši pri vrstici 260 in nadaljevati nekaj vrstic navzdol. Torej iz teh nizov izbrišite »Inverse«.

Nato boste v vrsticah 527, 536, 573, 579, 585, 601 in nekaj drugih videli nekaj šestnajstiških vrednosti. Zamenjajte z (#ffffffff) na (@ color / text).



Pritisnite CTRL + F, da poiščete v Notepad ++ cacheColorHint , delilnik , @ * android: barva / , in Inverzno .

CacheColorHint je drsno ozadje, zato moramo zagotoviti, da uporabljajo našo barvo ozadja. Razdelilniki so samoumevni in če želite, lahko spremenimo njihove šestnajstiške vrednosti. Edino, da se ne smete dotikati ničesar, kar kaže na @drawable. To so običajno slike, shranjene kot datoteke .png drugje v mapi .apk.

Ko iščete inverzno ' , bo prikazal sklice na textAppearanceInverse. Vsako od njih morate dvoklikniti in iz teh nizov izbrisati Inverse.

Nazadnje, iskanje @ * android: color / bo še enkrat preverilo, ali smo zamudili kakšno urejanje okvira. Če najdete karkoli, na katerem piše »android: popupBackground«> @ * android: color / white «, ga morate spremeniti v» android: popupBackground «> @ color / abs__background_holo_dark«. Sem spada linija 911, ki je lahko zmedena, ker že kaže na android: color / black.

Nato bomo odprli res / values ​​/ colors.xml in ga spremenili tako, da bo videti tako:

Naslednja res / values ​​/ styles.xml in se pomaknite navzdol do vrstice 328. Spremenite jo tako:

() je treba spremeniti v ()

Naredite enako za vrstico 479, tako da spremenite svetloba ' do ' Črna' .

Zdaj pojdite v res / values-v11 / styles.xml in odstranite ' svetloba ' kjer piše ' Holo.Light ' .

Nato boste zdaj odprli res / values-v14 / styles, ki vsebuje veliko nizov. Torej v prvih 46 vrsticah želite odstraniti vse Luč ' in ' Inverzno ' sklice in nato spremenite starše v vrsticah 53 in 54 v »@ * android: style / Theme.Holo«.

V vrstici 69 na desni strani nadrejenega odstranite svetlobo iz starša @ * android: style / Theme.Holo.Light.Dialog.

To je veliko dela, kajne? Morda boste odslej bolj cenili teme in preobleke aplikacij!

Nato bomo šli v res / barva mapo. Tam je nekaj besedilnih datotek, ki kažejo na črno. Odprite res / colors / action_mode_item_text_color_state_list.xml

Tako izgleda na zalogi. Spodaj je opisano, kako ga morate narediti.

Te spremembe morate spremeniti v naslednje datoteke xml v mapi / res / colors: Bottom_button.xml, Button_update.xml, Filelist_text_name.xml, Filelist_text_small.xml, Link_button.xml, Local_filelist_text_name.xml, Local_filelist_text_small_bote.txt.sxt.dll_bot.txt.sxt.dll_bot.txt.txt.sxt.dll.txt. xml, ss_bottom_bottom_text_color_light.xml, tab_text_foreground.xml.

Ko končate s temi, odprite / res / risanje in obstajajo xmls, ki nadzorujejo barvo ozadja. Torej pojdite skozi njih in naj bodo videti tako:

Enake spremembe uporabite za vse druge datoteke drawable.xml.

Zdaj odprite test.apk in pritisnite CTRL + levi klik, da označite smali in AndroidManifest, nato z desno miškino tipko in znova 'Uredi z Notepad ++'. Strinjam se z vsemi datotekami smali iz leta 1999. Ko se naloži, poiščite CTRL + F za -0x100 (črna)

Dobili boste približno 8 zadetkov, tisti, ki ga želite, je smali / com / dropbox / android / activity / TextEditActivity.smali, vrstica 599. Dvokliknite to vrstico.

Vrstica 599 vsebuje -0x100, vrstica 601 pa ima 'SetTextColor'. Obstaja tudi spremenljivka, ki se ujema s črto 599. Torej, če na kratko razložimo, -0x100, -0x1000000 in celo 0x0 pomeni črna, -0x1000000 je tudi črna in celo 0x0. Spremenite vrstico 599 tako, da odstranite dve 0 iz 100 in odstranite / high16 tako:

Nato bomo iskali @ * android: style, vendar v smaliju. Xml bo za x vseboval dodatno »0«, v smaliju pa ga ne uporabljamo. Mora biti '0x103004f' namesto '0x0103004f.

V Notepad ++ poiščite @ * android: style /, ki vsebuje 0x103.

Drugi zadetek je »const v7, 0x1030073«. Ponovno poiščite to v svojem public.xml iz framework-res.apk. Videli boste, da je to id za 'Theme.Holo.Light.Dialog'. Morali ga boste spremeniti v javni ID sloga nasprotne teme.

Ker je ta Theme.Holo.Light.Dialog, jo želite spremeniti v Theme.Holo.Dialog. Theme.Holo.Dialog ima ID »0x103006f«. To bo spremenilo opozorilno okno v pojavnem oknu, da namesto svetlejše teme Holo.Light uporabi temnejšo temo na osnovi holoa.

Naslednji, ki ga moramo spremeniti, je '0x103006e', ki je Theme.Holo.Light. Torej, nadaljujte in naredite nasprotno temo. V vašem public.xml iz framework-res.apk boste videli ID za Theme.Holo je 0x0103006b. zato spremenimo to vrstico tako, da bo videti tako:

Le še 2 lahko gresta skozi. Naslednja je '0x103000c', kar je za Theme.Light v public.xml. Nasprotno temu je Theme.Black, ne ThemeHolo. Torej v public.xml boste videli ID za Theme.Black »0x01030008« - spremenite ga tako, da bo videti tako:

V drugih aplikacijah lahko urejate in spreminjate druge stvari, z dovolj vaje pa boste lahko skoraj vsako temo preoblikovali. Toda za zdaj smo končali z vsemi bitnimi kodami ( končno!) .

Tako lahko zdaj odprete skript iz Apk Multi Tool in pritisnete 12 za sestavljanje aplikacije. Če se prikažejo kakršne koli napake, poskusite v dnevniku napak poiskati, kaj je šlo narobe, vendar je najverjetneje med urejanjem kode naredil tipkarsko napako ali drugo napako.

Ko je gradnja končana, pritisnite 2 in nato 13, da aplikacijo znova podpišete.

Aplikacija stock vsebuje mapo z imenom »Predloge« - to morate povleči v svoj nepodpisani apk s pomočjo 7zip. Kopirajte unsigned.apk v mapo 'place-apk-here-for-подpis' v Apk Multi Tool. Zdaj pritisnite 18 v terminalskem skriptu, da paketno podpišete aplikacije v tej mapi. Ko konča, se skript samodejno zapre. Zdaj lahko .apk naložite v svojo napravo!

6 minut branja