Wenn ich versucht habe, meine Anwendung mit einer neuen Version zu aktualisieren, die dieselbe Signatur wie die vorherige hat, wird der obige Fehler angezeigt.
Was fehlt mir?
Wenn Sie die Anwendung über auf Ihrem Gerät adb install
installieren, sollten Sie nach der Option für die Neuinstallation suchen -r
. Wenn Sie dies tun adb install -r
, sollten Sie in der Lage sein, ohne vorherige Deinstallation zu installieren.
adb install -r
funktioniert nicht immer (ich habe einen EVO 4G von Sprint, der sich nicht wie erwartet verhält). Die einzige Lösung, die ich gefunden habe, besteht darin, die Anwendung manuell zu entfernen. Manchmal muss ich es sogar über die Benutzeroberfläche des Telefons tun, weil die EVO so temperamentvoll ist.adb install -r
meine App zuerst entfernen und dann installieren oder aktualisieren möchte. Obwohladb
die Beschreibung nicht sehr klar ist ( -r: vorhandene Anwendung ersetzen ),adb install -r
wird Ihre App tatsächlich aktualisiert und Ihre App-Daten werden nicht entfernt. Daher geeignet, um das Upgrade Ihrer App zu testen (das sind die Informationen, nach denen ich gesucht habe).adb install -r
dies nicht funktioniert: Ich denke, dass die.apk
Datei, die Sie installieren möchten, nicht mit demselben Entwicklerzertifikat signiert wurde wie die.apk
auf dem Gerät installierte Datei. Dies ist leicht möglich, wenn Sie eine Debug-App installiert haben und dann versuchen, die Release-App zu installieren, oder umgekehrt. Sie können eine Anwendung nicht aktualisieren, wenn sie nicht mit demselben Zertifikat signiert ist.Sie erhalten diesen Fehler, weil bereits eine Anwendung mit einem Paketnamen vorhanden ist, der mit Ihrer Anwendung identisch ist. Wenn Sie sicher sind, dass Sie nicht dieselbe Anwendung zuvor installiert haben, ändern Sie den Paketnamen und versuchen Sie es.
Andernfalls können Sie Folgendes tun:
quelle
adb uninstall my.package
. Seltsamerweise wurden die Einstellungen, die ich entfernen wollte, nicht deinstalliert, aber das Paket wurde entfernt, was mich daran hinderte, es erneut zu installieren.Dies kann bedeuten, dass die Anwendung bereits für einen anderen Benutzer auf Ihrem Gerät installiert ist. Benutzer teilen Anwendungen. Ich weiß nicht warum, aber sie tun es. Wenn also ein Benutzer aktualisiert, wird eine Anwendung auch für den anderen Benutzer aktualisiert. Wenn Sie eine App deinstallieren, wird die App auf der anderen Seite nicht vom System entfernt.
quelle
adb install <package.apk>
immer wieder fehl, obwohl die App in der App-Liste nicht mehr sichtbar war. Es stellte sich heraus, dass es auf dem anderen Konto auf meinem Gerät noch vorhanden war ... Danke!Installieren
(Das
-r
Dadurch wird die vorhandene Kopie ersetzt. Fügen Sie eine hinzu,-s
wenn Sie sie auf einem Emulator installieren.)Stellen Sie sicher, dass die App gleich signiert ist und dieselbe
debug/release
Variante hatBonus
Ich habe in meinem einen Alias eingerichtet
~/.bash_profile
, um daraus einen 2char-Befehl zu machen.(Abkürzung für Build and Install)
quelle
Wenn Sie immer noch Probleme haben, versuchen Sie, die Anwendung über die Eingabeaufforderung zu deinstallieren.
adb uninstall com.example.yourpackagename
Fügen Sie einfach den Befehl hinzu und versuchen Sie erneut, ihn erneut zu installieren. Es funktioniert!quelle
Bei meinem Android 5-Tablet wird jedes Mal, wenn ich versuche, mit adb eine signierte Release-Apk zu installieren, die
[INSTALL_FAILED_ALREADY_EXISTS]
Fehlermeldung angezeigt .Ich muss zuerst das Debug-Paket deinstallieren. Ich kann jedoch nicht mit dem Application Manager des Geräts deinstallieren !
Wenn Sie die Debug-Version mit dem Anwendungsmanager deinstallieren , muss ich die Debug-Build-Variante von Android Studio erneut ausführen und sie dann mit deinstallieren
adb uninstall com.example.mypackagename
Schließlich kann ich verwenden
adb install myApp.apk
, um die signierte Version apk zu installieren.quelle