So deinstallieren Sie eine System-App mit dem Befehl adb uninstall (NICHT über rm oder auf andere Weise entfernen)

12

Müssen dies erwähnen, um mögliche Verwirrung zu vermeiden, ist diese Frage nicht doppelt. Diese Frage bezieht sich speziell auf die Verwendung von adb zum Deinstallieren eines Pakets . Es gibt mehrere ähnliche Fragen, die sich jedoch alle von dieser unterscheiden, da sie sich darauf konzentrieren, eine Anwendung auf irgendeine Weise zu entfernen.

Bitte geben Sie keine Antworten mit dem Befehl "rm" ein, um die Paketdateien zu löschen. Außerdem Antworten zu falsch formatierten Paketnamen oder nachgestellten Zeilenumbrüchen. Ich denke, sie sind so ziemlich alle in allen anderen Fragen behandelt.

Ich hatte pm uninstallFunktionalität aber nach ROM-Upgrade. Einige Dinge werden nicht mehr deinstalliert. Zum Beispiel die folgenden zwei System-Apps (die ich unter dem vorherigen ROM entfernt habe, wodurch die Gesamtleistung erheblich verbessert wurde):
/system/priv-app/SecurityCenter/SecurityCenter.apk=com.miui.securitycenter
/system/app/Updater/Updater.apk= com.android.updater

Beim Versuch, sie zu deinstallieren, wird eine Fehlermeldung angezeigt : Fehler [DELETE_FAILED_INTERNAL_ERROR]

Andere System- Apps (die nicht über die normale Android-Oberfläche deinstalliert werden) werden jedoch über einen pm uninstallBefehl deinstalliert . Beispiel:
/system/priv-app/Browser/Browser.apk=com.android.browser

Beide sind also System-Apps. Worin besteht der Unterschied?

Als Referenz habe ich ein Upgrade von MIUI 8.1.6.0 auf 8.5.3.0 durchgeführt und TWRP und SuperSU neu installiert. Diese Frage ist nicht spezifisch für mein ROM, da ich sehe, dass sich andere Personen in der gleichen Situation befinden. Aber ich scheine den Vorteil zu haben, einige System-Apps deinstallieren zu können. Und ich bin bereit dazu beizutragen, eine Lösung für alle zu finden und jede App zu deinstallieren.

Ich habe versucht: mount -o rw, remount / system,
aber das hat es nicht gelöst.

Bitte helfen Sie mit Ideen auf dem Weg. Vielen Dank!


Update 1 - Schritte Bestätigen intermittierende Probleme zu vermeiden
* alle Partitionen in TWRP Wischte
* Installierte Neueste ROM (MIUI 8.5.3.0)
* zu TWRP, nur abgewischt Wir gingen zurück / Daten
* Restaurierte / Daten von gesicherten Version des ROM , die mit dem Gerät geliefert (MIUI 8.1.6.0)
* Nachdem ich das Betriebssystem gestartet habe, wird ROM in den Einstellungen als aktuellstes (MIUI 8.5.3.0) angezeigt

Jetzt kann ich jede App deinstallieren, die ich ausprobiert habe. Selbst die widerstandsfähigsten: Google APP, Updater, Sicherheit.

Dieser Frankenstein ... ähm, ich meine, Hybrid-ROM funktioniert bisher einwandfrei, und ich habe bereits viele Systempakete entfernt, wodurch das Telefon (Redmi 3S +) sichtbar schneller wird. Aber ich würde immer noch gerne herausfinden, was dazu geführt hat, dass es zur generischen Lösung wurde . Wenn es also nicht kaputt geht, bin ich bereit, es zu kaputt zu machen. Wenn es also das nächste Mal kaputt geht, werden wir wissen, was es verursacht und wie wir es beheben können.

Update 2 -
* Alle Partitionen gelöscht und alle Partitionen aus dem Original-ROM wiederhergestellt.
* Wiederhergestellt auf die Werkseinstellungen (mit TWRP)
* und nach dem Booten ins ROM, ging zurück zu TWRP und erstellte ein weiteres Backup
. pm uninstall funktioniert nicht .

Gibt es Gedanken zu den Unterschieden zwischen den beiden / Datenpartitionen, auf die ich mich konzentrieren sollte?

Emil
quelle
1
AFAIK pm uninstallkann nicht mit System-Apps verwendet werden. Da es nicht klar ist, ob Sie eine App wirklich deinstallieren oder einfach nur verbergen möchten (Sie erwähnten pm disable), könnte pm hidees das sein, wonach Sie wirklich suchen?
Izzy
@ Izzy Ja, es kann. Das ist, was ich oben sage, ich habe es nur ein bisschen klarer gemacht. Ich wollte pm deinstallieren, aber ich meinte, vor dem Upgrade konnte ich auf System-Apps sowohl deinstallieren als auch deaktivieren und schrieb sogar nette Skripte, um alles nach dem Upgrade zu erledigen.
Emil
Ich habe es noch nie mit pm uninstallSystem-Apps geschafft. Aber ich habe eine Vermutung: Ist Ihr vorheriges ROM ein "Engineering" Build? Ich nehme an, es funktioniert mit einem Eng Build (auch bekannt als Dev Build).
iBug
@iBug nein, tatsächlich war das vorherige ROM dasjenige, mit dem dieses Telefon geliefert wurde. Das neue ROM ist auch ein offizielles Upgrade von der Herstellerseite.
Emil
1
@Firelord Meine MIUI Optiomization Einstellung war schon weg . device_owner.xml fehlt. device_policies.xml enthält nur die folgenden Zeilen: <? xml version = '1.0' encoding = 'utf-8' standalone = 'yes'?> <richtlinien setup-complete = "true"> <active-password -stuff here- /> </ Policies>
Emil

Antworten:

17

Ich habe die Optionen -k und --user zum Befehl pm hinzugefügt , z. B .:

pm uninstall -k --user 0 com.android.service

Der Befehl wurde als root ausgegeben, es ist nicht erforderlich, / system als rw erneut einzuhängen. Android auf dem Handy ist 6.0 und das Paket ist eine System-App. Ohne die zusätzliche Option erhalte ich den Fehler:

Failure [DELETE_FAILED_INTERNAL_ERROR]
RigacciOrg
quelle
Vielen Dank. Für alle anderen Leser haben einige Anleitungen einen Strich vor dem Benutzer, was für mich den Fehler verursacht hat.
TrojanName
3

Funktioniert auch ohne die Option -k (Benutzereinstellungen beibehalten):

pm uninstall --user 0 com.android.service

und ohne adb shell zu öffnen:

adb uninstall --user 0 com.android.service
Andrei Karcheuski
quelle
aktualisiert von miui 10 auf miui 11. aber für wenige system / priv-app scheitern diese cammands. zB für com.miui.calculator
srv_sud