2024. április 26., péntek

Gyorskeresés

Saját Cyanogenmod téma készítése

Miután a legelterjedtebb Android modot használjuk, nem árt, ha előkerítjük a kreativitásunkat is néha.

[ ÚJ TESZT ]

Values és xml, az átirányítások hálójában...

Most, hogy idáig eljutottunk, hozzuk létre az erőforrás mappáink! Ehhez előbb hozzunk létre egy res mappát, majd menjünk bele és rögtön még kettőt: egy values és egy xml nevűt is. Most pedig nézzük meg újra az Androidmanifest.xml fájlunk!

Az írtam korábban, hogy rámutatnak az @-el kezdődő részek az erőforrásaikra. Nos, mivel nekünk még egy darab sincs, így meg kéne őket előbb alkotni.

A res/values/ mappában egészen biztos keres egy strings.xml nevű fájlt. hozzuk hát létre!

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_name">My First Theme</string>
<string name="theme_name">MyTheme</string>
<string name="style_appearance_name">MyTheme</string>
<string name="author">Kepperv85</string>
<string name="copyright">Next Generation Team</string>
</resources>

Természetesen saját adatokkal dolgozzatok! Amire érdemes figyelni: a téma neve ne legyen kevert, mert nem fog lefordulni. Mindenhol ugyan azt az értéket várja el a fordító!

Hozzunk létre még ebben a mappában egy themes.xml fájlt, a következő tartalommal:

<resources>
<style name="MyTheme" parent="@android:style/Theme" />
</resources>

Ez egy kényszerítés, amit arra vezettek be, hogy az alap témát is cserélje le a rendszer, ezzel cserélhető a systemui és a framework bizonyos erőforrásainak egy jelentős része.

Menjünk át az xml mappánkba most, ott is szükség lesz legalább 3 fájlra!

Elsőre itt a redirections.xml-t készítsük el! A tartalma valami ilyesmi lesz:

<theme-redirections
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:pluto="http://www.w3.org/2001/pluto.html">

<package-redirections android:name="android"
android:minSdkVersion="7"
android:resource="@xml/android" />
.....
</theme-redirections>

Az alkulcsban láthatjuk, hogy vissza hivatkozik erre a mappára, és egy android nevű erőforrást keres. XML-ből származtatott erőforrás, tehát az android.xml fájlt fogja keresni. A redirections.xml feladata az, hogy az olyan csomagok átirányítását megvalósítsa, amiknél kötött a minimális SDK verzió. Ezeket a témázni kívánt csomagok forráskódjából ki lehet lesni. Az "android" ez esetben a systemui és a framework fájl tartalmát takarja majd.

A kulcsok a következő dolgokat adják meg:

android:name: a témázott csomag belső neve.
android:minSdkVersion="x": a minimális SDK verzió, amit a csomag használ
android:resource: az az erőforrás, amit itt fogunk majd felhasználni.

Nézzünk egy példát!

A csomagunk mondjuk legyen az email.apk. Ennek a belső neve com.android.email és a 15-ös SDK-t kéri:

<package-redirections android:name="com.android.email"
android:minSdkVersion="7"
android:resource="@xml/com_android_email" />

Az új erőforrásunk még nincs meg (com_android_email.xml) és nincs még kész az nadroid.xml sem, szóval ezekre szükségünk lesz!

Nézzük példaként most csak a com_android_email.xml-t, az android is így épül fel, csak a saját erőforrásival.

<?xml version="1.0" encoding="utf-8"?>
<resource-redirections>
<item name="drawable/icon">@drawable/com_android_email_ic_launcher_email</item>
...
</resource-redirections>

Az új "link" egyszerűbb, mint azt hinnénk:

<item name="amitcserélnifogunk">@amirecserélnifogjuk</item>

A mappák az Android alatt "kiterjesztéssel" is el vannak látva: -hdpi, -mdpi és így tovább. Van még egy csomó másik. Ám itt ezt NEM kell megadnunk. A témamotor ezt kezeli helyettünk.

Ha ezzel is megvagyunk, akkor már csak egy com_android_email_ic_launcher_email nevű képet kell ikonnak betennünk a telefonunk felbontásához illő mappába, amit létre is hozhatunk rögtön, pl. a drawable-hdpi-be. A kép lehet ikon (ico), png vagy jpg is. Illetve lehet .9.png is (draw patch). Az utóbbiról később írok még!

Már csak egy dolgunk maradt, mielőtt a témánk alapja kész lenne. Az előnézeti kép elhelyezése a "kiterjesztés" nélküli, tehát a sima drawable mappában (Hozzuk létre!). NE tegyük másikba, mert nem találja meg a motor!

Ha ezzel megvagyunk, akkor már csak le kell fordítanunk a témánk és ha minden jól ment, a telepítése és kiválasztás után az email ikon már ki is lett cserélve.

A cikk még nem ért véget, kérlek, lapozz!

Azóta történt

Előzmények

Hirdetés

Copyright © 2000-2024 PROHARDVER Informatikai Kft.