Paketsignaturen stimmen nicht mit der zuvor installierten Version überein

86

Dies ist mein Projekt: https://github.com/kenpeter/my_hak_news , eine direkte Kopie von https://github.com/grigio/HAgnostic-News .

Git-Klon https://github.com/kenpeter/my_hak_news , dann ausführenreact-native run-android

Habe diesen Fehler bekommen:

* What went wrong:
Execution failed for task ':app:installDebug'.
> com.android.builder.testing.api.DeviceException: com.android.ddmlib.InstallException: Failed to finalize session : INSTALL_FAILED_UPDATE_INCOMPATIBLE: Package com.hagnosticnews signatures do not match the previously installed version; ignoring!

Relevantes Problem: https://github.com/grigio/HAgnostic-News/issues/1 , ich verfolge verschiedene Wege, kann dieses Problem jedoch nicht beheben.

Kenpeter
quelle
14
Haben Sie die App bereits auf Ihrem Telefon installiert? Wenn ja, müssen Sie es deinstallieren, weil Sie eine andere Signatur als die ursprüngliche verwenden
maxoumime
Ich habe es einmal auf meinem Telefon installiert, es dann durch langes Drücken deinstalliert und dann zur Deinstallation übergegangen. Funktioniert immer noch nicht.
Kenpeter
3
Überprüfen Sie, ob die App für alle Benutzer deinstalliert wurde. Gehen Sie zu Einstellungen -> Apps -> HAgnostic News -> Optionen (die drei Punkte oben rechts) -> Für alle Benutzer
deinstallieren
Das ist die Lösung!
Kenpeter

Antworten:

123

Sie müssen es deinstallieren, da Sie eine andere Signatur als das Original verwenden. Wenn es nicht funktioniert, liegt es möglicherweise daran, dass es noch für einen anderen Benutzer auf dem Gerät installiert ist. Um eine vollständige Deinstallation durchzuführen, gehen Sie zu Einstellungen -> Apps -> HAgnostic News -> Optionen (die drei Punkte oben rechts) -> Für alle Benutzer deinstallieren

Maxoumime
quelle
2
Deinstallation macht nichts. Dieser Fehler tritt auch auf Geräten auf, auf denen die App nicht installiert ist.
Igor Ganapolsky
3
@maxoimime Was passiert, wenn Sie die neue Version im Play Store veröffentlichen? Muss der Benutzer die App deinstallieren, bevor er die neue Version installiert? Oder kann der Benutzer die App problemlos aktualisieren?
Peter
@maxoimime diese Antwort funktioniert. Sie können Ihren Kommentar entfernen. Es ist für die meisten Benutzer irreführend
AL-zami
1
Das war auch für mich das Problem. Es stellte sich heraus, dass meine App auch im Samsung Secure Folder installiert wurde.
Roman
Ich war mit diesem Problem konfrontiert, weil aus einigen Gründen einige zuvor deinstallierte Apps darin "nicht für diesen Benutzer installiert" waren. Ich habe jedoch nur einen Benutzer auf meinem Telefon. Das ist komisch
Rémi Rousselet
75

Ich habe dieses Problem auch bei meinem Projekt festgestellt.

Das hat mir geholfen, so hoffnungsvoll wird jemand anderem helfen:

adb uninstall "com.domain.yourapp"

Lösung ist von hier.

Jirimertin
quelle
Richtige Antwort, +1 für die Rettung meines Tages :)
Saeed
1
Dies ist die richtige Antwort, da ich die App bereits für alle Benutzer vom Telefon deinstalliert hatte, aber immer wieder den gleichen Fehler erhielt. Danke
Tarek K. Ajaj
1
Xamarin Forms Benutzer hier. Das war die Antwort für mich. Ich hatte die App vom Telefon deinstalliert, aber das war nicht genug.
Brunner
Ja, das funktioniert auch bei mir, es wird nicht in der Apps-Liste angezeigt!
sl45sms
15

Wenn die von Ihnen installierte Version der App nicht mit demselben Keystore- / Signaturzertifikat erstellt wurde, hat sie eine andere Signatur. Standardmäßig verfügt jeder Buildcomputer über ein anderes Debug-Zertifikat, es sei denn, Sie geben an, wie es gemäß der Google-Dokumentation signiert werden soll kann sichergestellt werden, dass Ihre App mit demselben Debug-Schlüssel erstellt wird, unabhängig davon, auf welchem ​​Computer Sie die Anwendung erstellen auf.

Um mit der Installation fortzufahren, müssen Sie die vorhandene Version deinstallieren und erneut versuchen.

Jake_
quelle
12

Dies geschieht, wenn Sie eine App mit verschiedenen Versionen auf Ihrem Handy / Emulator-Telefon installiert haben.

Deinstallieren Sie einfach die vorhandene App , um das Problem zu lösen

Muhammad Ashfaq
quelle
8

Dies geschieht meistens, wenn auf dem Telefon die App-Version aus dem Google Play Store installiert ist. Sie können den Code entweder mit demselben Keystore / Zertifikat erstellen, das Sie für Ihre Produktionsversion verwendet haben, oder ihn einfach vom Telefon deinstallieren und mit Ihrem Debug-Keystore / Zertifikat erstellen

WIE
quelle
Ich stehe vor dem gleichen Problem wie in der Frage erwähnt. Können Sie mir bitte mitteilen, wie ich den Code mit einem früheren Schlüsselspeicher / Zertifikat erstellen kann? Mein Client hat mir die Keystore-Datei zur Verfügung gestellt, aber ich weiß nicht, wie ich mein reaktionsfähiges natives Android mit der von meinem Client bereitgestellten Keystore-Datei erstellen kann.
Yousaf Iqbal
Ich habe Android schon seit einiger Zeit nicht mehr ausgeführt, aber laut: developer.android.com/studio/publish/app-signing#sign_release sollten Sie zu Build> Generate Signed Bundle / APK und unter dem Pfad 'Key Store' gehen 'Feld, drücken Sie' Vorhandene
AS
6

com.android.builder.testing.api.DeviceException: com.android.ddmlib.InstallException: Sitzung konnte nicht abgeschlossen werden: INSTALL_FAILED_UPDATE_INCOMPATIBLE: Die Signaturen des Pakets [MY REACT NATIVE APP NAME HERE] stimmen nicht mit der zuvor installierten Version überein. ignorieren!

Ich habe diesen Fehler erhalten, als ich versucht habe, meine React Native Android-App mit diesem Befehl auf einem verbundenen Gerät zu installieren:

react-native run-android --variant=release

Ich hatte auch einen Emulator auf meinem Computer.

Nachdem ich den Emulator beendet habe , war die Ausführung dieses Befehls erfolgreich.

Beau Smith
quelle
6

Heute hatte ich das gleiche Problem auf meinem Samsung-Gerät. In meinem speziellen Fall wurde die App NICHT auf dem Telefon angezeigt , sondern INSTALLIERT , sodass ich sie nicht deinstallieren / entfernen konnte. Daher musste ich die App über das Terminal deinstallieren : $ adb uninstall "com.domain.yourapp" Mein Projektbaum sieht folgendermaßen aus (Teilansicht):

└── com
    └── gluonapplication
        ├── DrawerManager.java
        ├── StartApplication.java
        └── views
            ├── PrimaryPresenter.java
            ├── PrimaryView.java
            ├── SecondaryPresenter.java
            └── SecondaryView.java

Für mich lautete der Befehl: $ adb uninstall com.gluonapplication Nachdem ich fertig war, installierte ich die App über das Terminal:

$ cd /path/to/apk/
$ adb install -t myAwesomeApp.apk  # -t means test install

Das hat bei mir funktioniert. Ich hoffe diese Antwort ist hilfreich.

Qazi Fahim Farhan
quelle
5

Wenn Sie versuchen, es in einem Emulator zu installieren, aber ein anderes Telefon über USB an den Computer angeschlossen haben, ziehen Sie das USB-Kabel ab oder deaktivieren Sie das USB-Debugging auf dem physischen Gerät. (Ich habe selbst 30 Minuten damit verschwendet.)

waliurjs
quelle
1
Das war mein Problem. Ich hatte mein Telefon zum Aufladen an meinen Computer angeschlossen und versuchte, in einem Emulator zu laufen.
user3486427
3

Ich habe den gleichen Fehler bekommen. Ich habe die App auf meinem virtuellen Gerät deinstalliert und den Befehl 'react-native run-android' erneut ausgeführt.

Wiezalditzijn
quelle
1

Ich habe das gleiche Problem, es lief gut in AVD, aber in meinem Telefon war nicht in Ordnung. Ich habe die App auf meinem Handy deinstalliert, dann funktioniert sie einwandfrei.

Rafael Ramon
quelle
1

Dieser Fehler ist mir passiert, als ein früherer Build auf meinem Simulator / Telefon mit anderen Anmeldeinformationen hochgeladen wurde. Was ich tun musste war laufen:

adb uninstall com.exampleappname

Nachdem ich das getan hatte, konnte ich den Build erneut ausführen und eine APK generieren.

Ariel Salem
quelle
0

Sie müssen es deinstallieren, da Sie eine andere Signatur als das Original verwenden. Wenn es nicht funktioniert, liegt es möglicherweise daran, dass es noch für einen anderen Benutzer auf dem Gerät installiert ist. Um eine vollständige Deinstallation durchzuführen, gehen Sie zu Einstellungen -> Apps -> (bestimmte App) -> Optionen (die drei Punkte oben rechts) -> Für alle Benutzer deinstallieren.

Ich habe auch das Problem, dass die bereits installierte ionische App (gleicher Paketname) von meinem Telefon entfernt wurde, nachdem sie einwandfrei funktioniert hat.

Mahendren
quelle
0

Ich hatte dieses Problem auf einem Samsung-Gerät. Bei der Deinstallation der App wurde dieselbe Meldung angezeigt. Das Problem war, dass die App auch im Bereich "Sicherer Ordner" des Telefons installiert wurde. Es lohnt sich zu prüfen, ob dies Ihr Szenario ist.

Eliram
quelle
0

Gehen Sie zu Android Studio -> AVD-Manager -> Wählen Sie Ihre AVD aus und löschen Sie Benutzerdaten

Es ist nicht erforderlich, die gesamte AVD neu zu installieren.

mingliang94
quelle
0

Sie müssen für LG-Geräte vollständig deinstallieren, indem Sie cmd adb uninstall packageName verwenden

v.Vinh
quelle
Sie beantworten diese Frage vor 4 Jahren mit dem, was Sie vorschlagen
Gonzalo Garcia
0

Dies passierte mir in einem React Native-Projekt, als ich die Bundle-ID einer App umbenannte, und es kam zu einem Konflikt mit einer anderen Bundle-ID, die ich bereits zuvor verwendet hatte. Ich habe es durch eine Neuinstallation behoben:

  1. Suchen Sie die App auf dem Startbildschirm des Simulators, drücken Sie lange auf das App-Symbol, drücken Sie App infound wählen Sie "Deinstallieren".

  2. Ausführen react-native run android.

Jamie Birch
quelle
0

Dies liegt an der Verfügbarkeit der vorherigen Version der Anwendung, die nicht auf dem Gerät installiert ist, deren Daten jedoch im Gerätespeicher vorhanden sind. Daher können diese deinstallierten Anwendungsdaten auf dem Gerät nicht aktualisiert werden

Versuche dies :

Gehen Sie zu Geräteeinstellungen ==> Apps (Alle Apps) ==> Durchsuchen Sie Ihre App ODER suchen Sie nach ' Client ' ==> Drücken Sie im App-Infobildschirm die Option Dreifachpunkte in der oberen rechten Ecke ==> Wählen Sie ' Für alle Benutzer deinstallieren ' '==> Eine Eingabeaufforderung wird angezeigt. Wählen Sie' OK '.

Es funktioniert bei mir jedes Mal, wenn dieser Fehler auftritt

Harshal Patil
quelle
0

In meinem Fall war das Problem, dass ich eine App mit dem Paketnamen installiert hatte, sagen wir com.example.package mit Android Studio auf meinem Gerät. Ich habe eine andere App mit demselben Paketnamen erstellt und versucht, sie auf meinem Gerät zu installieren. Das hat das Problem verursacht. Überprüfen Sie einfach auf Ihrem Gerät, ob bereits eine andere App mit demselben Paketnamen vorhanden ist oder nicht.

ANUJ GUPTA
quelle
-1

In meinem Fall hat die Deinstallation der installierten Anwendung auf dem angeschlossenen Gerät mein Problem behoben

Langer Nguyen
quelle
-5

Es darf jeweils nur 1 Emulator oder Gerät geöffnet sein. Stellen Sie sicher, dass nicht mehrere Emulatoren ausgeführt werden.

Plaimanus Lueondee
quelle