[How-To] Wie verändere (modde) ich das Aussehen einer .apk [Modding Einsteiger]

  • 53 Antworten
  • Letztes Antwortdatum
he_stheone64

he_stheone64

Philosoph
4.721
Da immer mehr an Ihrem Stein rumspielen und modden wollen, aber viele nicht wissen wie, gibt es hier zum Einstieg ein TUT für die einfachste und schnellste Variante Bilder, Icons und Hintergründe in .apk anzupassen am Beispiel des Helix Launchers. Sollte etwas schief gehen - "it wasn`t me" - ich übernehme keine Verantwortung, ist aber im Prinzip ganz einfach, wenn man über Basic Bildbearbeitungs Skills verfügt und sich ansonsten mit Root ein wenig auskennt.

Siehe https://www.android-hilfe.de/forum/...one.60/faq-root-fuer-das-milestone.12943.html

Beispiel - Wir ändern den App Drawer:

1. Die .apk auf dem Rechner in .zip umbenennen
2. In Photoshop (oder was immer Du nutzt) ein leeres Bild bauen ohne Hintergrund mit der Grösse des zu ändernden Bildes - in dem Fall 140x80 pixel
3. Neues Logo auf maximal 80 Pixel Höhe bzw 140 Pixel Breite verkleinern und dann in diese Vorlage reinziehen
4. Logo speichern als .png mit der Bezeichnung des Originals - in diesem Fall all_apps_button_normal.png
5. Das Bild mit einem Effekt versehen (z.B. Schein aussen)
6. Dieses Bild abspeichern als .png mit der Bezeichnung all_apps_button_focused.png
7. Das Bild mit einem weiteren (oder den lassen) Effekt versehen (z.B. Schein aussen)
8. Dieses Bild abspeichern als .png mit der Bezeichnung all_apps_button_pressed.png
9. pattern_carbon_fiber_dark.png im Ordner res/drawable-hdpi öffnen
10. pattern_carbon_fiber_dark.png bearbeiten (z.B. auf semi transparent setzen) und speichern oder alternativ einen neuen Hintergrund mit 120x120 pixel erstellen und speichern als pattern_carbon_fiber_dark.png
11. Den in zip umbenannten Helix mit winrar öffnen
12. Alle 4 geänderten .png über hinzufügen in winrar in den Ordner res/drawable-hdpi importieren (überschreibt die alten .png)
13. .zip schliessen und wieder umbenennen in .apk (nicht neu packen, einfach nur die .zip nach hinzufügen der png schliessen)
14. Auf die SD card kopieren - von da ab in system app - Standard Launcher sichern - Helix umbenennen in Launcher.apk - permissions 644 setzen (siehe Screenshot) - reboot. Wer unsicher ist oder lieber 2 Launcher parallel betreibt, benennt nicht um und setzt nur permissions neu, dann reboot. Danach steht dann der Standard und der Helix zur Auswahl.

Das funktioniert in dieser Form nicht für .9.png Dateien (diese passen sich an unterschiedliche Auflösungen an), die müssen separat aufbereitet werden über draw9patch (im Android SDK enthalten).

Vorraussetzung für Bearbeitung von .9.png Dateien:

Installiertes Android SDK inkl. dem ADT Plugin und Eclipse, sowie anschl. Verknüpfung in Eclipse zum Android SDK:

http://developer.android.com/sdk/installing.html

Wie Du mit draw9patch arbeitest, kannst Du bei ireality nachlesen:

http://androart.net/android-design/t...-pngs/#post202

Wenn Ihr .9.png erstellt habt, funktioniert alles wie oben beschrieben.

Dieses Verfahren funktioniert analog u.a. bei der settings.apk (u.a Energiewidget), facebook.apk, livewallpapers.apk, geniewidget.apk, home++.apk, framework-res.apk (bei der bitte den Hinweis lesen) und einigen anderen (habe noch nicht alle durch :D)

WICHTIG: Solltet Ihr an der framework-res.apk rumbasteln, dann die permissions immer VORHER in der data Partition (erstellt dafür einfach einen TEMP folder in data, auf der SD Card klappt das NICHT) setzen, da der Stein nach dem kopieren in system/framework sofort abstürzt und rebootet. Wer auf Nummer sicher gehen möchte, dem kann man diesen kleinen Umweg generell empfehlen. Habt Ihr die permissions nicht vorher gesetzt, heisst es "hasta la neuflasha" :eek:

Nun noch ein paar Screenshots zur Erstellung eines Eclipse Projekts für diejenigen, die sich an die "dankbaren" .9.png heranwagen. Vorraussetzung ist installiertes Eclipse, ADT Plugin und Android SDK:

1. So sollte die aktuelle Version ausschauen - Galileo:

EclipseVersionStart.jpg


Verknüpfung zum Android SDK - ohne geht nix:

EclipseSDK.jpg


Erstelle ein neues Android Projekt:

EclipseProjectNewAndroid.jpg


Das Projekt benötigt einen Namen, Firmware Version (hier 2.1), Pfad zum Projekt, Package name und activity:

EclipseProjectNewAndroidName.jpg


So schaut das Project in Eclipse nach Erstellung aus:

EclipseProject.jpg


Nach Erstellung der .9.png via Draw9patch die files einfach in den Ordner drawable-hdpi ziehen:

EclipseProjectpng.jpg


Dann rechts Klick auf den Projekt Namen - Android Tools - Export unsigned package

EclipseProjectExport.jpg


Jetzt könnt Ihr die gepatchten .9.png in Eurer .apk verwenden (und hoffen das Ihr die Grenzen in draw9patch richtig gesetzt habt, ist anfangs etwas try & error - achtet da vor allem auch darauf bei backgrounds den Content mit zu definieren. Ein Pflichtbesuch vor Bearbeitung von .9.png ist diese Site, hätte mir auch anfangs viel Frust erspart, da man dort eine klare Idee für die korrekten Marker bekommt:

http://www.fixedd.com/projects/android_drawables_display

Hier noch ein Beispiel, was man dann so alles anstellen kann anhand meines aktuellen notification sliders (Teil des - soon to be released - Carbon Themes):

StatusBarUpdate2.jpg



Teil 2 - die wichtigsten xml und services.jar für weissen Text (oder andere Farben) auf dunklen Statusleisten:

Framework-res.apk - Ordner Layout

status_bar.xml (Ticker Text Farbe)
status_bar_expanded.xml (Löschen Text)
status_bar_latest_event_content.xml (Überschrift, Text u. Datum in ausgez. Leiste)

Sucht in HxD (ist ein freier Hexeditor) nach allen Hex Werten "08 00 00 1C" und ändert diese in FF FF FF (ausser Löschen Text). Wenn Ihr kein weiss wollt, dann nehmt Ihr den RGB Wert in umgekehrter Reihenfolge - aus FF D2 00 (gelb) wird dann z.B. 00 D2 FF

DownloadProvider.apk - Ordner Layout

status_bar_ongoing_event_progress_bar.xml (Download Text z.B. bei Market oder Browser Downloads)

Sucht in HxD nach allen Hex Werten "08 00 00 1C" und ändert diese in FF FF FF.

Music.apk - Ordner Layout


statusbar.xml (Textfarbe bei Musik in der Leiste)

Sucht in HxD nach allen Hex Werten "44" und "45" und ändert diese in "41" bzw. "42"

Phone.apk - Ordner Layout

ongoing_call_notification.xml (Textfarbe bei Telefonaten in der Leiste)

Sucht in HxD nach allen Hex Werten "08 00 00 1C" und ändert diese in FF FF FF.

Für die services.jar verwendet Ihr am besten den color changer - dazu gibt es ja seit langem ein bekanntes TUT:

http://www.androidpit.de/de/android...faerben-wir-Texte-in-der-Notification-Bar-ein


Für allgemeine Textfarben:

In framework-res.apk im Folder res/colors


  • primary_text_dark.xml (Haupt Textfarbe)
  • secondary_text_dark.xml (Untertitel - z.B. in settings, Kontakten etc)
  • tertiary_text_dark.xml (nur ganz selten bei z.B. popups)
  • search_url_text.xml (Suchtext)
  • tab_indicator_text.xml (z.B. im Dialer in den Tabs)
 

Anhänge

  • snap20100313_084239.jpg
    snap20100313_084239.jpg
    74,9 KB · Aufrufe: 621
Zuletzt bearbeitet:
  • Danke
Reaktionen: emilio, roux., mailtoalf und 13 andere
Zuletzt bearbeitet:
  • Danke
Reaktionen: he_stheone64
Sinnvoll wäre vll auch der Hinweis, dass die Dateien nur hinzugefügt, aber nicht komprimiert werden dürfen...
 
  • Danke
Reaktionen: he_stheone64
Mal eine kurze Frage:

Muss man den modifizierten Helixlauncher sofort als Launcher.apk unter system/app ablegen, oder kann man nicht zuerst einmal den mod. Helixlauncher als zweiten Launcher neben dem Standardlauncher installieren und sehen ob alles funktioniert?

Geht nämlich beim Modifizieren was schief und ich hab den Standardlauncher in system/app überschrieben wirds mühsam...

Edit: Wer lesen kann ist im Vorteil... Sorry! Um meine Frage selbst zu beantworten: Muss man nicht! Allerdings muss die Datei auf jeden Fall nach system/app!
 
Zuletzt bearbeitet:
Muss mann aber die geanderte apk net noch siegnieren????? Ohne glappt das bei mir nicht
 
man muß sie nur signieren, wenn man sie normal installieren will, wenn man sie nach /system/app kopiert, wird die signatur nicht überprüft und solange man nix falsch gemacht hat laufen die modifizierten apk's
 
ich hab inzwischen nach der verlinkten methode von ireality meine .9er pngs bearbeitet.
allerdings hängt´s bei seinem punkt eclipse/motodev:
Nun brauchen wir Eclipse / Motodev
Wir erstellen ein Beispiel Projekt mit Hilfe der SDK. (ich nehme die SDK 2.0 und Snake als Project). Geben nun dem Projekt einen Namen, z.b. Drawnine.
Und schieben unser .9.png in den drawable Ordner des Projekts (in Eclipse). Kein anderer Ordner.
Nun müssen wir auf den Projektnamen rechts-klicken --> Android Tools -> Export Unsigned Project
Es wird gefragt wo die .apk abgespeichert werden soll. Nach einem klick auf Speichern erscheint noch eine Hinweismeldung welche man wegklicken kann.
Öffnet man nun die apk mit WinZIP oder ähnlichem sieht man im drawable Ordner unsere .9.png welche keine Schwarzen Punkte hat aber fertig gepatcht ist! Und in Themes verwendet werden kann.​


ich starte also eclipse und erstelle ein neues projekt - ich hab allerdings keine auswahlmöglichkeit namens snake und auch nichts, das auch nur im entferntesten nach bildverarbeitung riecht.
hat mal jemand´n tip? android sdk und eclipse sind installiert, updates liefen durch, umgebungsvariablen wurden gesetzt/erweitert und eclipse erkennt das sdk auch korrekt.
 
Zuletzt bearbeitet:
erstell einfach ein neues android projekt, kann nen leeres sein, funktioniert auch ;)
so mach ich es auch immer :D
du mußt eben nur das eclipse plugin installiert haben und mit dem sdk verknüpft haben, dann läuft das ;)
 
Zuletzt bearbeitet:
wenn du auf "new" und dann "project" gehst, sollte da was von android stehen, da dann einfach ein neues, nicht aus einer vorlage machen, und es läuft, so gehts bei mir ja auch
 
hab ich auch schon versucht. hab nochmal´n neuen screenshot gemacht..

www.kistebier.kicks-ass.net/public/eclipse_1.jpg

da hab ich markiert, wo mein problem liegt, ein solches projekt zu erstellen, die roten rahmen. ich hab keine ahnung, was java identifier sind, da ich von java selbst null ahnung hab ^^ und bevor ich nicht mindestens 2 identifier angegeben hab, wird der "finish"-button nicht klickbar.
normalerweise fugger ich so lange rum, bis sowas geht, aber hier vergeht mir grad echt die lust.. *grummel*
 
ich glaub du hast eine komplett falsche version installiert oder das android sdk nicht als plugin eingefügt. du solltest eigentlich unter new -> android projekt finden
 

Anhänge

  • eclipse.png
    eclipse.png
    30,7 KB · Aufrufe: 478
@ Kiste - schau mal auf s.1 - hab für Dich mal eine Foto Love Story erstellt :D

Anhand der Screens solltest Du dort jetzt klarer sehen, lade Dir vor allem die richtige Version (galileo).
 
amen!! mein gott, war das ne schwere geburt ^^
mein einziges problem war, daß ich bei erstellung eines nicht-samples (beispiel) einen korrekten namen vergeben mußte, in diesem fall settings.apk. so weit kam ich, hier war dann feierabend. also - vielen lieben dank für die foto-love-story :D wird sicher auch dem einen oder anderen noch lange stunden und STRESS ersparen..
kein plan, wieviel tabak mich der zirkus gekostet hat. ein glück bin ich nicht anfällig für graue haare, sonst säh ich methusalem sicher sehr ähnlich...

danke nochmal!!
 
de nada ;)
 
hm.. meine nicht-eignung zum grafiker hab ich somit auch mal wieder unter beweis gestellt. ich halt mich wieder an die "technischeren" dinge und warte mal, ob fufu´s auf blau gemoddeter theme kommt... der kann sowas wenigstens :) (nicht nur er, aber er meinte, daß er evtl was in nem dunklen blau fabrizieren wird)
 
Was genau brauchst Du denn zur Zeit? Du kannst ev. jau auch einiges in blau bei katsuros theme rauspopeln, wenn es nur wenig Dateien sind, kann ich Dir auch gern helfen. Mein Theme wird allerdings eher schwarzlastig (eben carbon theme).
 
naja, ich werd vorerst nix neues mehr machen -.- privat ist bisschen was aus dem Ruder gelaufen, von daher werd ich erstmal bisschen kürzer tretten....
 
@hes_theone
evtl halt ich mich auch an dein carbon theme, wenn´s fertig is und änder da´n bißchen was ab, so hab ich´s bisher auch immer gemacht. die "normalen" icons zu bearbeiten, is kein ding - photoshop elements an, rein damit, farbtöne abändern, fertig. minimalste abweichungen fallen da nicht so auf.
diesmal wollt ich´s aber "sauber" machen und hab die icons ziemlich aufwendig selbst umgefärbt. das erste ergebnis war so extrem, daß es auf´m milestone-display nicht anzusehen war, das blau war viel zu kräftig. am pc sah´s nach blau metallic aus, auf´m ms eher.. hm, obwohl blau eigentlich gar nicht grell sein kann, wirkte es so.
der zweite versuch war dann ein helleres blau, ganz minimal richtung lila. aber irgendwie gefällt´s mir nicht wirklich. auch mit den draw9-dateien bin ich nicht zufrieden. obwohl ich mit den patchpunkten experimentierte, war das ergebnis mist ^^ und bei solchen kreativen arbeiten hab ich schlichtweg zu wenig geduld, leider :/ an technischen problemen, an software (auch, oder fast vor allem am pc) oder meinetwegen wenn ich am auto/bike bastel, kann ich mir stundenlang in aller seelenruhe den kopf zerbrechen. da bleib ich so lange dran, bis ich ne lösung hab.
aber kreativität war noch nie meine stärke, wenn´s um künstlerisches/gestalterisches ging. ich werd also weiterhin schmarotzen müssen und mir dann mit kleinen handgriffen manches noch etwas zurechtfummeln :)

@fufu
ui.. klingt ja nicht ganz so toll... :/ ich hoffe, es ist nichts ernstes und wünsch dir, daß du´s bald wieder in den griff kriegst!! *daumen drück*
 

Ähnliche Themen

R
Antworten
2
Aufrufe
2.113
Ronald W
R
B
Antworten
6
Aufrufe
7.700
martin_austria
M
-FuFu-
  • -FuFu-
Antworten
0
Aufrufe
2.694
-FuFu-
-FuFu-
Zurück
Oben Unten