Mittels der ADB lassen sich ganz einfach Systemapps sichern, deinstallieren und wieder neu installieren. Beispielhaft zeige ich dies mal an der Taschenrechner-App (Calkulator.apk) im DeFrost-ROM
Als erstes solltet Ihr ein Nandroid-Backup machen, damit Ihr eueren alten Zustand wieder herstellen könnt, sofern Euer ROM nicht mehr starten will (weil eventuell die eine oder Andere Systemapp doch tiefer im System integriert ist…)
1. Schreibzugriff auf der Systempartition herstellen:
- Am Telefon USB-debugging einschalten und per USB-Kabel an den Rechner anschließen
- Auf dem Rechner eine Kommandozeile öffnen und in das Verzeichnis Tools des Android-SDK wechseln
- Habt Ihr S-Off genügt die Eingabe des Befehls „adb remount“ und Ihr könnt zu Schritt 2 gehen
- Ohne S-OFF müsst Ihr ins Recovery starten, indem Ihr den Befehl „adb reboot recovery“ eingebt. Anschließend startet das Telefon ins Clockworkmod-Recovery. Sobald das Telefon im Recovery ist, gebt Ihr den Befehl „adb shell mount /system“ ein
2. Auflistung aller Systemapps:
- Als erstes will ich herausbekommen, was alles an Systemapps auf meinem Desire ist, dazu starte ich eine Shell, die mir eine Art Kommandozeile auf dem Telefon gibt, in dem ich den Befehl „adb shell“ eingebe
- (Vor dem Cursor im Kommandozeilenfenster auf dem PC steht jetzt nicht mehr der Pfad zur ADB sondern ein „#“ )
- jetzt den Befehl „ls system/app“ eingeben (Der Befehl lautet LS in Kleinbuchstaben!!!), dies Listet alle Systemapps auf
- auf dem Bildschirm sieht man lauter Dateien mit der Endung apk, die sich im Systemverzeichnis befinden. Google hilft eigentlich recht schnell, wenn man wissen will, welche Datei welche Funktion hat
- durch Eingabe von „Exit“ verlasse ich die Android-Shell,
- Wichtig: Die nachfolgenden Befehle funktionieren nicht, bzw. führen zur Fehlermeldung „/sbin/sh: adb: not found“ die sagt, dass adb nicht gefunden wurde. Also immer hier per EXIT die Shell verlassen (ihr arbeitet sonst auf dem Handy und dort existiert der Befehl „adb“ nicht)
3. Backup einer Systemapp:
- als Beispiel dient mir der Taschenrechner (Calculator.apk)
- der Befehl „adb pull system/app/Calculator.apk Calculator.apk“ kopiert die Taschenrechner-App in das Verzeichnis Tools des Android-SDKs. Der Allgemeine Backup-Befehl für Systemapps lautet: „adb pull system/app/<Dateiname der apk-Datei> <Kompletter Zielpfad auf dem Rechner><Name der apk-datei auf dem Rechner>“ So kann ich beispielsweise auch die Taschenrechner-App auf ein anderes Verzeichnis (Beispielsweise App-Backup auf meiner Festplatte D) mit folgendem Befehl sichern: „adb pull system/app/Calculator.apk d:App-BackupCalculator.apk“
4. Löschen einer Systemapp:
- eine Systemdatei kann ich mit dem ADB-Befehl rm (für remove) löschen
- Um beim Beispiel des Taschenrechners zu bleiben: „adb shell rm system/app/Calculator.apk“
- Es erfolgt keine Rückfrage, die Datei ist jetzt gelöscht
5. Wieder herstellen einer APK-Datei vom Rechner
- als Beispiel dient mir der Taschenrechner (Calculator.apk)
- der Befehl „adb push Calculator.apk system/app/Calculator.apk“ kopiert die Taschenrechner-App aus dem Verzeichnis Tools des Android-SDKs in das Systemverzeichnis des Telefons. Der Allgemeine Restore-Befehl für Systemapps lautet: „adb push <Kompletter Zielpfad auf dem Rechner><Name der apk-datei auf dem Rechner> system/app/<Dateiname der apk-Datei>“ So kann ich beispielsweise auch die Taschenrechner-App aus einem anderen Verzeichnis (Beispielsweise App-Backup auf meiner Festplatte D) mit folgendem Befehl wieder herstellen: „adb push d:App-BackupCalculator.apk system/app/Calculator.apk“
Hab noch nie was via ADB gemacht, aber klappt alles so, wie du es beschreibst. Das das ganze via Wlan auch funktioniert, könntest du noch einpflegen.
Das ADB-Wlan hab ich auch schon gefunden, aber ich traue bei systemkritischen Sachen der WLAN-Geschichte nicht ganz ;o)
klingt gut. gleich mal testen
Kann man die Apps auch mit dem Root-Explorer löschen?
Vorausgesetzt S-OFF natürlich.
natürlich
Hallo super Anleitung nur ein kleines Problem.
Bei mir funktionierte der Befehl pull zum sichern der apk nicht.
ich habe darauf mv für move genommen, daraufhin wurde miene Flickr.apk gelöscht. Hast du die zufällig iwo rumliegen?
entpacke sie dir doch einfach aus der zip-datei deines Roms.
stimmt da kam ich dann gestern auch noch drauf.
Danke
Hallo,
Kann ich auch die phone.apk wiedereinspiellen? Diese möchte ich ändern. Möchte nur den grünen droiden wegbekommen. Habe desire hd mit original Software und root. Habe herausgefunden das in der phone.apk die png’s enthalten sind. Danke für Hilfe.
such dir ein rom mit einer unveränderten Phone.apk und extrahiere diese einfach aus dem zip. Dann mit ADB wieder aufs telefon aufspielen müsste theoretisch funktionieren. Praktisch weiß ich das nicht. Welches Theme hast du denn installiert, vielleicht kommt es auch von dem?
Hallo, ich möchte die original rom beibehalten Themen ist auch original, mich stört nur der droide wenn ich angerufen werde. Möchte aber keine Fotos zu Kontakte hinzufügen. Habe gedacht ich kann die phone.apk in zip umwandeln die png’s täuschen und wieder einspielen. Ist mein erstes Android Telefon, und möchte nix fleschen.
Hi, ma ne Frage,
ich möchte GMAIL entfernen, aber ich bekomme die fehlermeldung: rm failed for system/app/gmail.apk, Read-only File Sytem.
Root rechte hab ich,
Cyanogenmod DeFroST 6.1a
thx
ins recovery restartet wie im ersten Abschnitt beschrieben?
hab ich irgendwie total überlesen ….
peinlich 🙂
thx & super seite 🙂
Hallo,
leider funktioniert die Anleitung bei mir nicht.
Die Systemapps werden mit „ls system/app“ noch korrekt angezeigt, aber beim Sichern oder Entfernen gibt es nach Eingabe von „adb shell rm system/app/HtcTwitter.apk“ die Fehlermeldung: „/sbin/sh: adb: not found“
Auch beim Versuch, andere Anwendungen zu löschen, kam die gleiche Fehlermeldung.
Desire – Leedroid 2.3c im „Recovery“
Rootrechte
Win7 (cmd als Administrator) – HTC-Sync 3.0
Tolle Seite, danke für die viele Arbeit…!
titanium backup starten
taste „probleme“ drücken zur installation der Busybox
Desire neu starten
nochmal Probieren
Hallo,
habe über Titanium-Backup die Busybox neu installiet, neu gestartet, ins Recovery und die Fehlermeldung bleibt leider die gleiche.
Noch Ideen?
führst du die befehle auf dem telefon aus? Die Befehle werden im SDK-Tools verzeichnis deines Rechners eingegeben.
Die Befehle führe ich, wie in deiner Anleitung steht, im Computer in der Eingabeaufforderung aus. Bis zur Anzeige der vorhandenen apk’s geht auch noch alles, wie es soll. Bloß beim dann löschen nicht.
Hallo!
Ich komme beim Löschen der apps nicht weiter. Wenn ich adb shell rm system/app/beispiel.apk eingebe, erscheint die Frage, ob ich die Datei löschen will, ich kann aber keine weitere Eingabe machen. Es passiert einfach nichts mehr. Gelöscht ist auch nichts.
hi ich benutze die adb apk geht super einfach und hab bis jetzt keine probleme
Hab das selbe Problem wie Solaris…bei mri kommt die gleiche Meldung und die App wurde nicht gelöscht 🙁
Hab auch schon in Titanium Back up die Bussybox installiert, aber nicht geholfen…
Hoffe jemand kann mir helfen;)
usb-debugging ist angeschalten?
USB-Debugging ist bei mir angeschaltet.
hast du s-off, bzw. wenn nicht, bist du im recovery, wenn du die app löschen willst?
Ich hatte den glecihen Fehler wie du, die lösung ist eigentlich ganz einfach:P
Ich verlink dich mal auf den Forum eintrag von mir und dort steht auch die Lösung;)
http://www.android-hilfe.de/root-hacking-modding-fuer-htc-desire/76996-problem-beim-loeschen-von-standard-apps.html
So Hoffe das Hilft dir;)
danke für den Hinweis. Bin irgendwie nicht drauf gekommen, dass man das Exit weeglässt. Habs mal eingefügt.
Jetzt hat’s endlich geklappt. Hatte tatsächlich das „Exit“ nicht gemacht. Ich hatte gedacht, dass das erst am Schluss notwendig ist… Sorry.
Danke für die super Anleitungen!
So konnte ich auch endlich den HTC LockScreen loswerden.
Irgend eine Idee, wie ich nun das Entsperren mit 2 Klicks auf die mittlere Taste hinbekomme? Beim HTC Lockscreen ging das bei LeeDroid ja.
Hallo zusammen,
mein Desire ist S-OFF nach http://alpharev.nl/ und trotzdem ist dieser Schritt (Zitat):
„Habt Ihr S-Off genügt die Eingabe des Befehls “adb remount” und Ihr könnt zu Schritt 2 gehen“ nicht möglich.
Es kommt die Meldung: * daemon not running. starting it now on port 5037 *
* daemon started successfully *
remount failed: Operation not permitted
Nach der Vorgehenweise für nicht S-OFF: „Ohne S-OFF müsst Ihr ins Recovery starten, indem Ihr den Befehl “adb reboot recovery” eingebt. Anschließend startet das Telefon ins Clockworkmod-Recovery. Sobald das Telefon im Recovery ist, gebt Ihr den Befehl “adb shell mount /system” ein“ geht es.
Ideen?
Danke und Grüße
Desireme
rechner mal neu gestartet? oder schau mal im taskmanager, ob noch eine „adb.exe“ im Speicher hängt und kill diese mal, manchmal liegt es daran…
Hallo Brain,
danke für deine Unterstützung. Unter den gleichen Voraussetzungen konnte ich jetzt nicht mehr prüfen, da ich Cyanogenmod 7RC aufgespielt habe und mit dem funktioniert es. Den Rechner neustarten wäre es nicht gewesen, weil ich es Tags drauf wieder erfolglos probierte. Wäre nur der Taskmanager geblieben.
Danke und Gruß
Desireme
Hi,
braucht mann für oben genannte Befehle ROOT?
Micha
Ah, wo sind wir hier.
Kann ich mir selbst beantworten – JA.
hi, ich habe das prob das ich mittels : „ls system/app“ nur die fehlermeldung: ls: system/app: No such file or directory
~ #
ausgeworfen bekomme! sonst hat alle funktioniert!
kann mir wer helfen?
grüße
b-f
hat sich erledigt!!!!
im recovery (CWM 3.0.2.8) war war „back menue button enabled“
ich dummerchen hab zuvor mit dem tarckpad gescrollt und jenes so aktiviert!
danke für diese anleitung hier!
grüße
b-f
Leider bei mir klappt die Anleitung nur bis zum Befehl >adb reboot recovery
Das Tablet kommt ins Recovery-Mode mit mehreren Optionen.
Überall dann, außer der Option „apply update from adb“ kommt bei der Angabe „adb shell mount /eystem“ die Fehlermeldung „error : device (null) not found“.
Wenn ich aber auf dem Tablet die Option „apply update from adb“ anwähle und dan den Befehl „adb shell mount /eystem“ angebe kommt „error: closed“
Was mache ich falsch?