GUI Modder

C

cardex

Fortgeschrittenes Mitglied
60
Ich habe mich die letzten Tage ein wenig mit gtkmm beschäftigt. Dabei ist ein kleiner GUI Modder für das Milestone entstanden dessen erste Alpha ich mit euch teilen möchte.

Ziel war es, das Milestone ohne Scripte und ohne lästiges hin und her kopieren auf die Speicherkarte individuell anzupassen. USB Kabel dran und ab gehts. Das klappte in meinen Tests bisher auch reibungslos.

Benötigt wird:
*das Programm aus dem Anhang
*Root
*Eine lauffähige Version der Android SDK
*OpenRecovery (getestet mit der G.O.T Recovery)

Der Funktionsumfang ist bisher noch recht bescheiden. Ich warte auf Feedback und überlege dann was ich in spätere Versionen einbauen werde. Theoretisch denkbar sollten aber erstmal alle bisher bekannten Modifikationen sein.

Was bisher geht v0.1:
*Entfernen von Stock Apps (derzeit 26)
*Backups von /system /system/app /system/framework auf den eigenen Rechner
*Installieren beliebiger Themes.

Anleitung
1. Passendes Archiv aus dem Anhang laden und entpacken.
2. Linux: Das Programm über make all kompilieren.
Windows: Die gui_modder.exe im bin Ordner starten
3. Milestone ans USB Kabel anschließen
4. Das Milestone in die Recovery booten. (geht im Programm)
5. Danach im Settings Tab einen gültigen Pfad zu eurer Android SDK Umgebung angeben und speichern.

Wichtig dabei ist, dass der tools Ordner im Pfad mit angegeben wird und das der Pfad nicht mit einem Backslash endet. (Die Komfortfunktionen sowas abzufangen kommen später ;))
Also zB c:\android-sdk-windows\tools oder unter Linux /home/dir/android-sdk-linux/tools

Noch ein paar Worte zur Theme Installation.
Im entpackten Ordner liegen 4 Ordner. Für euch ist nur der Ordner 'bin' interessant. Neben einigen DLLs liegt hier die gui_modder.exe. Zusätzlich findet sich im 'bin' Ordner noch der Order 'system' mit den Unterordnern 'app' und 'framework'. Die Dateien, die später auf dem Telefon im Ordner /system/app bzw /system/framework landen sollen, müssen in diese Unterordner kopiert werden. Das Programm liest _nur_ diese Ordner für den Kopiervorgang ein.

Das ganze ist wirklich noch eine frühe alpha Version. Es sollten nur Leute nutzen, die im Ernstfall wissen, wie man seinen Stein manuell wieder flott macht. In meinen Tests gab es vor allem bei der Windows Version manchmal Ausnahmefehler. Diese traten allerdings sporadisch auf und ich konnte noch nicht genau ausmachen woran es liegt. Wenn es ein Popup mit Fehlermeldung geben sollte, einfach die gewünschte Aktion erneut ausführen.

Letzte Bemerkung:
Während der Modder Dateien auf das Telefon kopiert oder andersrum hängt das Programm und lässt keine weiteren Eingaben zu. Manchmal kann das etwas dauern. Es wird aber in jedemfall immer eine Fehlermeldung am Ende geben und man kann es erneut versuchen. Also nicht wundern.

Linux Version
remove.png


theme.png


backup.png


Windows Version
windows_backup.png


windows_remove.png



Linux Version v0.3 (make all)

Windows v0.3


Achja, es öffnet sich beim starten der Windowsversion immer auch eine Eingabeaufforderung. Keine Ahnung was Windows da treibt. Wenn mir jemand sagen kann wie ich das abstelle wäre ich dankbar :D


UPDATE:
v0.2
*Auf Nachfrage habe ich die Sprache auf Englisch umgestellt.
*Bugfix beim Backup
*/data/app und /data/app-private können nun auch gesichert werden
*Popup wenn ein Vorgang abgeschloßen wurde
*Der Android SDK Pfad wird nun in einer Settingsdatei gespeichert

v0.3
*Lib von PStream auf LibExecStream umgestellt
*Dadurch crosscompiling und eine Windows GUI möglich
*Mehr Bugfixes
*Die ADB Ausgaben werden jetzt direkt ins Programm gelesen und ausgegeben
*Sourcecode enthalten (make all zum compilieren)

v0.3.1
*Windows Version für 32 und 64bit veröffentlicht.
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: dacki, nazfalas, La Espada und 8 andere
Sieht gut aus, sowas hat bisher gefehlt ;)
 
schöne idee ;)
als anreiz für dich bezüglich der funktionen, besonders der "Stock Apps Entfernen" wäre es nicht leichter, wenn du einfach das verzeichniss /system/app auslesen lässt und dann alle vorhandenen apks gelistet werden? und mit ausnahme variablen kannst du ja aps wie usb und co ausblenden lassen (wenn es nicht zu kompliziert von der umsetzung ist)

das gleiche würd ich für die theme installation vorschlagen, das man auf dem pc den ordner Themes ausliest und dann den inhalt vom ordner framework nach /system/framework kopiert, den inhalt von app nach /system/app und den ordner fonts nach /system/fonts ;)

und bezüglich deiner "backup" funktion fände ich gut, wenn er nach data/app und data/app-private sichert


ansonsten wie gesagt eine sehr schöne arbeit ;) ich hoffe du arbeitest weiter dran, dann kann ich vielleicht meine arbeit am LMF mod einstellen :D
 
und schreib bitte bei deinen Voraussetzungen noch rein, das man Linux benötigt ;)
oder planst du noch eine Windows Version? :D
 
-FuFu- schrieb:
schöne idee ;)
als anreiz für dich bezüglich der funktionen, besonders der "Stock Apps Entfernen" wäre es nicht leichter, wenn du einfach das verzeichniss /system/app auslesen lässt und dann alle vorhandenen apks gelistet werden? und mit ausnahme variablen kannst du ja aps wie usb und co ausblenden lassen (wenn es nicht zu kompliziert von der umsetzung ist)

das gleiche würd ich für die theme installation vorschlagen, das man auf dem pc den ordner Themes ausliest und dann den inhalt vom ordner framework nach /system/framework kopiert, den inhalt von app nach /system/app und den ordner fonts nach /system/fonts ;)

und bezüglich deiner "backup" funktion fände ich gut, wenn er nach data/app und data/app-private sichert


ansonsten wie gesagt eine sehr schöne arbeit ;) ich hoffe du arbeitest weiter dran, dann kann ich vielleicht meine arbeit am LMF mod einstellen :D

das dynamische auslesen der systemapps dürfte ziemlich schwierig werden. ich muss ja in der klasse schon vorher die checkbutton objekte anlegen. da weiss ich aber noch garnicht wieviele apps überhaupt eingelesen werden. genau das selbe mit den signal handlern die auf die einzelnen checkbuttons reagieren. soweit bin ich noch nicht, hab ja grad erst mit guis angefangen. ;)

und das mit den themes passiert ja ungefähr so. nur das man die apps halt in die unterordner schieben muss. aber sonst kommt nachher jemand auf die idee seine themes im ordner /ich/bin/ein/toller/ordner/und/habe/ganz/viele/unterordner abzulegen. das wird dann etwas viel arbeit das alles abzufangen.

aber ich werd mal sehen was sich machen lässt. die backup funktion zu erweitern zB wäre keine große sache und ist schon mal notiert
 
Ich meinte, dass man es ja jetzt so dierekt am PC machen kann, wie cardex schon sagte ;)
 
cardex schrieb:
das dynamische auslesen der systemapps dürfte ziemlich schwierig werden. ich muss ja in der klasse schon vorher die checkbutton objekte anlegen. da weiss ich aber noch garnicht wieviele apps überhaupt eingelesen werden. genau das selbe mit den signal handlern die auf die einzelnen checkbuttons reagieren. soweit bin ich noch nicht, hab ja grad erst mit guis angefangen. ;)

und das mit den themes passiert ja ungefähr so. nur das man die apps halt in die unterordner schieben muss. aber sonst kommt nachher jemand auf die idee seine themes im ordner /ich/bin/ein/toller/ordner/und/habe/ganz/viele/unterordner abzulegen. das wird dann etwas viel arbeit das alles abzufangen.

aber ich werd mal sehen was sich machen lässt. die backup funktion zu erweitern zB wäre keine große sache und ist schon mal notiert
hmm, okay ;) ich weis wie gesagt nicht, wie das ganze funktioniert, das mit dem auslesen war ne idee, was es für die stockapps erleichtert und dann z.b. schon entfernte apps nicht mehr angezeigt werden, denn du kannst davon ausgehen, das die frage irgendwann kommt, warum das app blabla noch angezeigt wird, ob wohl es schon gelöscht ist ;)

werd ich wohl mal zum testen meine Ubuntu Festplatte in den Laptop machen :D
 
in was hast das geschrieben cardex? also welche sprache?
 
c++
 
ich muss ja in der klasse schon vorher die checkbutton objekte anlegen. da weiss ich aber noch garnicht wieviele apps überhaupt eingelesen werden. genau das selbe mit den signal handlern die auf die einzelnen checkbuttons reagieren. soweit bin ich noch nicht, hab ja grad erst mit guis angefangen

Wie sag ich immer so schön: prozedural wäre Dir das nicht passiert... :D

Nice work, mir gefällt die Idee. Testen kann ich ja leider nicht....
 
Halte mich bitte nicht für total dumm, aber wie führe ich das Programm überhaupt aus? :confused:

Im Terminal sagt er mir:
modder: command not found

Und wenn ich die Datei "modder" im Krusader per Rechtsklick ausführen will, passiert einfach nichts :confused:

Irgendwie steh ich grad da wie so'n Trottel :D
 
versuch es mal über die konsole ./modder
 
Ah...ist wohl nur für 32 Bit-Systeme ausgelegt? :)

Edit: Jo, offensichtlich. Mir fehlten noch ein paar Bibliotheken :)
 
Zuletzt bearbeitet:
ja ich habs auf meinem 32 bit system kompiliert. du müsstest also die 32bit libs installieren.
ich hab aber vor den sourcecode aufzuräumen und dann die sources freizugeben. dann kann sich das programm jeder selbst mit einem makefile kompilieren
 
endlich mal Linux-Support! Denke ich werde es mal testen, wenn ich nicht so kaputt bin :)

Die ersten Screenshots gefallen schon!
 
Cool, endlich auch Linux-Support. Gleich mal testen...vielen Dank!

i.d.S. mecss
 
If you can also add packer/unpacker feature as in SBF Depacker by Skrilax_CZ - it will be very good!
 
  • Danke
Reaktionen: TimeTurn

Ähnliche Themen

K
Antworten
163
Aufrufe
21.863
TimeTurn
TimeTurn
P
Antworten
5
Aufrufe
1.017
Bandit
Bandit
F
Antworten
4
Aufrufe
1.128
fcbmille
F
Zurück
Oben Unten