Customizing: QMG statt PNG Files

  • 13 Antworten
  • Neuester Beitrag
Diskutiere Customizing: QMG statt PNG Files im Android OS Entwicklung / Customize im Bereich Android App Entwicklung.
L

lyris

Neues Mitglied
Hallo, community: Ich habe mir das Alpha geholt, erfolgreich gerootet (sogar ohne KNOX zu triggern soweit ich sehe) und mir die üblichen APKs geschnappt (SystemUI.apk) um mal die 'unattraktiven' Icons zu bearbeiten.

Jetzt habe ich das Problem daß viele relevante Grafiken (Batterie, WLAN etc.) aus der Statusbar dummerweise im QMG Format vorliegen.

Es war nicht weiter schwer diese mit einem geeigneten Tool in PNG-Dateien zu konvertieren aber: Jetzt stelle ich mir die Frage wie ich die ersetzten PNGs am Besten wieder zurück in QMGs und am Ende in die APK bekomme?

Hat hier jemand Erfahrungen? Ich finde zu dem Thema nur sehr "wirre" informationen wie: Man kann die PNGs einfach in QMG umbenennen, man kann die QMGs löschen und gleichnamige PNG-Dateien speichern usw.?

Ich habe auch schon den Theme-Designer versucht, aber dort finde ich kein Template mit Icons in der größe die ich gerne hätte > Ich kann mit dem Tool die kleinen Icons in der Statusleiste nicht bearbeiten und somit auch nicht in das QMG-Format zurück konvertieren.

Über einen "belastbaren" Tip, was wirklich funktioniert wäre ich dankbar.
 
H

Hakuu

Fortgeschrittenes Mitglied
Leider kann ich dir diesbezüglich nicht helfen, hätte jedoch eine Frage: wie hast du ohne Knox zu verändern gerootet? Kannst du mir eine Anleitung schicken? Wäre sehr dankbar :)

Der ursprüngliche Beitrag von 14:12 Uhr wurde um 14:13 Uhr ergänzt:

[TOOL] Converter QMG/ASTC->PNG | Samsung Galaxy Note 4 | XDA Forums
google hat das ausgespuckt, vielleicht hilft dir das ja weiter.
 
L

lyris

Neues Mitglied
Ich habe es mit Kingroot gemacht - kämpfe allerdings im Moment damit, das ganze - dubiose King-geraffels, durch SuperSu zu ersetzen.

Bei mir steht allerdings bei "KNOX warranty Void" einfach eine 0 dahinter.
Kein 0x0 oder ähnliches.
 
RAB

RAB

Stammgast
Eigentlich ist das nicht so schwer... - Ich hab das unter KitKat gemacht.

Mit "AdvancedAPKTool" hab ich die Dateien, z. B. Framework dekompiliert, die Samsung Formate durch die PNGs ersezt, dann die Datei wieder rekompiliert. Wenn Du nur die Grafiken austauschen willst, reicht es wahrscheinlich auch, die APKs z. B. mit 7zip zu öffnen (nicht entpacken!!!) um sie dort zu ersetzen.

Es gibt neben QMG noch zwei andere Formate die in PNGs umgewandelt werden, deren Namen fallen mir aber gerade nicht ein. Kriegst Du aber leicht raus, wenn Du zu QMGs googelst.

Dem Handy ist es egal ob hinter dem Dateinamen .qmg oder .png steht, die APKs werden hinterher nur etwas größer sein, da QMGs stärker komprimiert sind

Wichtig ist: Du musst exakt so viele PNGs haben wie Original-Dateien zum Ersetzen, die XMLs und eventuell andere Dateien zählen nicht und bleiben unangetastet.

Wenn Du (so wie ich) noch KitKat verwendest, kannst Du natürlich auch gleich meine Dateien nehmen (Framework, SysUI), die findest Du bei XDA in diesem Thread

Und wie eigentlich immer bei sowas: Mach vorher ein TWRP-Image oder eine flashbare Zip-Datei mit den Originalen. Falls was schiefläuft kommst Du so wenigstens zum Ursprungszustand zurück
 
Zuletzt bearbeitet:
L

lyris

Neues Mitglied
@RAB: Vielen Dank. Ich hatte das klassische APK-Tool und werde mich mal mit der Advanced-Version beschäftigen.

@ALL, die gerne den Kinguser auf dem Alpha wieder loswerden würden:
Ich hab viel herumgespielt daher kann ich nicht 100% sagen, daß die Methode immer und bei jedem klappt aber ich bin das ganze King-Zeug los und hab SuperSu, und noch immer Root mit Knox-Varranty 0.

Das habe ich so gemacht:
- ADB+Fastboot im minimized Paket besorgt
- Die aktuellste SuperSU.apk besorgt
- Die APK-Datei auf die SDCard gelegt
- Kingroot als APK Datei in aktueller Version besorgt
- alle Reste vorheriger Versuche so weit möglich beseitigt (SuperSu, King* etc. deinstalliert)

-Am Handy: KingRoot ausgeführt und gerootet
-die seltsame App mit den chinesischen Zeichen gleich klassisch am Handy deinstalliert
-ADB gestartet und folgendes getan:

#Superuserrechte erfragt (und am Handy bestätigt)
> SU
#Mit den Rechten in der Session KingRoot und Kinguser deinstalliert
> am kill com.kingroot.RushRoot
> pm uninstall com.kingroot.RushRoot
> am kill com.kingroot.kinguser
> pm uninstall com.kingroot.kinguser
#ich glaube hier sollte man ein paar Minuten warten, damit ggf. Prozesse beendet und APKs gelöscht werden können

#Jetzt SuperSU installieren
> pm install /sdcard/mrw/superuser.apk
#und starten - lustigerweise kann man dann in der SuperSU-App am Handy die Superuser Rechte für sich selbst vergeben (?)
>am start -a android.intent.action.MAIN -n eu.chainfire.supersu/.MainActivity

Und jetzt kommt der Part, an dem es "schwammig" wird. Ich habe die Binaries aktualisieren lassen, dann kam die Meldung daß noch eine andere SuperUser-App gefunden wurde, ob er die deinstallieren soll > Mit "Ja" beantwortet.
Dann kam irgendwann die Meldung, daß es nicht erfolgreich war und ich neu starten soll.

Dabei war die ganze Zeit die ADB-Session offen, ich habe erstmal nicht neu gestartet sondern den RootExplorer (am Handy) aufgemacht. Erstaunlicherweise kam dann die Frage von SuperSU ob ich RootRechte erteilen will. Im SuperSu habe ich unter Einstellungen "SuperSU deaktivieren" ausgewählt und es dann wieder re-aktiviert.

Dann neu gestartet und zu meiner Verwunderung, sind alle Spuren von KingRoot/User weg, und SuperSU ist meine Anwendung für SuperUser Anfragen geblieben.

Was ich auf jedenfall sagen kann:
- Mit der Kinguser.APK (nicht VRoot Verfahren via ADB) funktioniert kein bei XDA bzw. AndroidWolf gepostetes Script
- Weder der Kinguser.APK Ansatz noch das VRoot-Verfahren via ADB haben bei mir den Knox-Zähler getriggert (sofern meine 0 ohne 0x0 auch gilt)
- Beide Ansätze schmeißen jede Menge "Bloatware" auf das Handy, die APK-Variante vermutlich weniger als die VRoot-Variante

Ich habe jetzt also ein: gerootetes SM-G850F
Android: 4.4.4
Build: FXXU2BOA2
Gerätestatus: Benutzerdefiniert (vermutlich weil ich jede Menge Systemapps /Bloatware deinstalliert habe)
Knox Warranty Void: 0

Vielleicht hilft es jemandem ! :)

Der ursprüngliche Beitrag von 20:01 Uhr wurde um 20:30 Uhr ergänzt:

@RAB: Vielen Dank - ich bin ein Stückchen weiter, würde mich aber besser fühlen, wenn Du mir zu meinem Plan noch ein "O.K" geben könntest.

1. AdvancedAPKTool installiert, Framework und SystemUI in den In-Ordner gestellt, Framework installiert
2. Mittels Option 2 (Decompile Files) die SystemUI.apk decompiliert
3. Die qmg-Files (z.B. für Batterieanzeige) bearbeitet, gelöscht und durch ansonsten gleichnamige png-Files ersetzt (sprich: stat_sys_battery_0.qmg gelöscht und eine stat_sys_battery_0.png in den Ordner drawable-xhdpi gestellt)
4. jetzt tue ich mir schwer: via Option 3 (Recompile files) wieder eine APK erstellen, aber: Only Recompile - Recompile and Sign - Recompile and Zipalign - Recompile, Sign and Zipalign ?

Eine APK kommt immer raus ... aber welche Option brauche ich denn ?

Vielen Dank für die Hilfe und viele Grüße !
 
RAB

RAB

Stammgast
1, Hast Du beide Frameworks eingebunden, also zuerst framework-res, danach twframework-res? - Würd ich tun!
2. QMGs durch gleichnamige PNGs zu ersetzen hört sich gut an. Was meinst Du aber mit QMG bearbeitet???
3. Signen würd ich beim Rekompilieren immer, Zipalign ist von der Idee her gut, wird aber nach meiner Erfahrung überbewertet, daher: Recompile and Sign sollte zum Testen erstmal reichen
 
L

lyris

Neues Mitglied
Hey klasse - vielen Dank. Die twframework-res kannte ich bis dato gar nicht, also habe ich sie auch mal mit eingebunden.

Mit QMG bearbeitet habe ich mich natürlich nicht korrekt ausgedrückt (auch wenn das mein favorit wäre): Ich meinte natürlich: Die QMGs in PNG konvertiert, die PNGs bearbeitet und damit die QMG ersetzt.

Ich versuch mich mal mit den Tipps. Beim signen war ich mir unsicher.
Beim S3 (Gingerbread?) habe ich mit dem klassischen APK-Tool immer nur die APKs extrahiert, Bilder geändert, APK gezipped und nicht gesigned und alles lief prima. Daher habe ich vor dem Signen etwas Respekt.
 
RAB

RAB

Stammgast
Das hängt von den Sicherheitsmechanismen des Herstellers ab. Mein Sony hätte eine Veränderung der Systemfiles ohne Resign gnadenlos abgestraft...

Beim Samsung habe ich da (weil mein erstes) noch keine Erfahrung...

Bilder tauschen mag problemlos gehen, aber wenn Du anfängst XMLs zu verändern, dann wirds interessant.
 
L

lyris

Neues Mitglied
Bevor ich mein neues Handy schrotte, wollte ich nochmal die Rückfrage an die Community stellen, ob jemand schonmal mit einem Samsung (S5/S6/Alpha...) KitKat die SystemUI.apk / framework-res.apk modifiziert hat und wenn ja, wie?

Ich sehe einfach mehrere Möglichkeiten - vor allem hinsichtlich der Signatur:
- APK entpacken, qmgs/pngs ersetzen und neu packen (da bräuchte ich kein decompile und kein sign, so lief das ungefähr auch beim Galaxy S3 mit JellyBean/4.3)

- APK decompilieren, modifizieren, re-compilieren
- ....wie letzte + signieren

Nachdem ich kein CustomRecovery geflashed habe (weil ich den jungfräulichen Knox-Counter nicht weiter gefährden will) sollte meine "modifizierte" APK am besten gleich halbwegs laufen - und eine falsche/fehlende Signatur macht bestimmt größeren Ärger.
 
RAB

RAB

Stammgast
lyris schrieb:
...
Ich sehe einfach mehrere Möglichkeiten - vor allem hinsichtlich der Signatur:
- APK entpacken, qmgs/pngs ersetzen und neu packen (da bräuchte ich kein decompile und kein sign, so lief das ungefähr auch beim Galaxy S3 mit JellyBean/4.3)
Eben nicht!!! Das geht mit ziemlicher Sicherheit schief!

Um Grafiken zu tauschen werden APKs allgemein nicht entpackt, sondern nur mittels Zip-Programm geöffnet, und schon gar nicht repacked...

Ich dekompilier die Files um auch andere Sachen ändern zu können. Richtig ist: Wenn es Dir nur um die Grafiken geht, dann kannst Du das in der Regel ohne Decompile und Resign bewerkstelligen.

Aber egal was Du tust: Du solltest dafür Sorge tragen, dass Du Dein System im Notfall jederzeit wieder herstellen kannst.

Die Verantwortung liegt bei Dir, da würden 100000 Community-Antworten auch nix dran ändern...
 
L

lyris

Neues Mitglied
Hey RAB - vielen Dank für die vielen Tipps.
Wenn ich Dich richtig verstehe, kann ich dann nachwievor das klassische, alte APKTool verwenden, da es eh nichts anderes tut als:
- apk extrahieren
> ich modifiziere
- pngs optimieren
- apk komprimieren
- apk zip-alignen

Ich habe es diesmal aber so gemacht, wie Du gesagt hast:
- APK in 7Zip geöffnet
- QMG-Dateien rausgeworfen
- bis auf extension gleichnamige PNGs reingepackt
- APK gespeichert und auf dem Handy die SystemUI.apk überschrieben.

Jetzt hab ich nur ein Phänomen, daß ich mir gar nicht erklären kann.
Ich habe die Dateien: stat_sys_signal_0 bis 4.qmg gelöscht, überarbeitete pngs eingefügt und oben beschriebenes Vorgehen verwendet.

Nach dem Neustart zeigt er mir offensichtlich kurz die stat_sys_signal_4.png an und ich habe mich sehr gefreut. Nach ca. 2 sec. verschwindet das Symbol für Empfangssignal aber komplett - und kommt auch nicht wieder. Ansonsten ist das Handy aber sehr unauffällig. Irgend eine Idee, was das sein könnte ?

Vielen Dank nochmal für die wertvollen Tipps und viele Grüße !
 
RAB

RAB

Stammgast
10 Antworten - in Zukunft reichts den "Danke"-Button zu drücken...

Vorm Bearbeiten/Ersetzen solltest Du Dich vergewissern, ob es sich um normale PNGs handelt, oder aber um *.9png...

Warum nimmst Du nicht einfach mal meine Dateien aus dem XDA-Link? Da ist alles schon umgewandelt. Sind zwar neu signiert, aber die laufen bei mir ohne Probleme seit Erstellung, und von XDA-Seite sind keine Klagen gekommen.

Du kannst ja Deine original-signierten SystemUI und Framework für den Fall der Fälle vorher sichern.
 
barnaby1973

barnaby1973

Fortgeschrittenes Mitglied
lyris schrieb:
Hallo, community: Ich habe mir das Alpha geholt, erfolgreich gerootet (sogar ohne KNOX zu triggern soweit ich sehe) und mir die üblichen APKs geschnappt (SystemUI.apk) um mal die 'unattraktiven' Icons zu bearbeiten.

Jetzt habe ich das Problem daß viele relevante Grafiken (Batterie, WLAN etc.) aus der Statusbar dummerweise im QMG Format vorliegen.

Es war nicht weiter schwer diese mit einem geeigneten Tool in PNG-Dateien zu konvertieren aber: Jetzt stelle ich mir die Frage wie ich die ersetzten PNGs am Besten wieder zurück in QMGs und am Ende in die APK bekomme?

Hat hier jemand Erfahrungen? Ich finde zu dem Thema nur sehr "wirre" informationen wie: Man kann die PNGs einfach in QMG umbenennen, man kann die QMGs löschen und gleichnamige PNG-Dateien speichern usw.?

Ich habe auch schon den Theme-Designer versucht, aber dort finde ich kein Template mit Icons in der größe die ich gerne hätte > Ich kann mit dem Tool die kleinen Icons in der Statusleiste nicht bearbeiten und somit auch nicht in das QMG-Format zurück konvertieren.

Über einen "belastbaren" Tip, was wirklich funktioniert wäre ich dankbar.
Mit welchem Tool hast du die QMG Datei zu PNG konvertiert. Suche schon ewig in Google.
Danke
 
L

lyris

Neues Mitglied
Hi .... Hab erst jetzt Deine Frage gesehen: Such mal direkt nach "QMG2PNG" ... erster Treffer ist ein Link zu XDA und den habe ich genutzt. Ist aber eine APK die Du auf dem Handy ausführen musst.