Ich habe eine dumme App erstellt, die ich mit ein paar Freunden teilen kann. Keine Notwendigkeit, es im App-Store zu veröffentlichen.
Ich habe das erste apk
(signiert) erstellt, es auf einen Webserver hochgeladen und alles hat gut funktioniert.
Ein kleines Problem trat auf, ich habe es behoben, neu erstellt, mit demselben Keystore signiert und erneut hochgeladen. Es scheint jetzt, dass ich nicht von der neuen installieren kann apk
. Der Debugger sagt mir:
signatures do not match the previously installed version
Also habe ich die alte Version deinstalliert, indem ich die App-Schublade geöffnet und auf die Schaltfläche "Deinstallieren" gezogen habe. Beim Öffnen von "Einstellungen -> Apps" sehe ich es nirgendwo mehr. Ich sehe keine Spuren der App auf meinem Gerät.
Trotzdem erhalte ich immer noch die obige Fehlermeldung.
Ist es möglich , einige Informationen noch verweilt auf dem Gerät irgendwo? Kann ich das auf irgendeine Weise überprüfen?
Antworten:
Ja Es ist möglich, dass Ihre alte Anwendung nicht zu 100% entfernt wird oder ihre Daten nicht entfernt werden.
Versuchen:
adb uninstall "com.yourapp.yourapp"
Wenn Sie nicht genau wissen, was Sie als Ersatz für "com.yourapp.yourapp" verwenden sollen, öffnen Sie einfach Android Studio, führen Sie Ihre App aus, während sie mit einem Gerät verbunden ist, und sehen Sie sich dann das Debug-Fenster an.
Es sagt:
Waiting for device. Target device: samsung-sm_t531-xxxxxxxxx Uploading file local path: C:\Users\myapp\app\build\outputs\apk\myapp.apk remote path: /data/local/tmp/com.myapp.myapp Installing com.myapp.myapp DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/com.myapp.myapp" pkg: /data/local/tmp/com.myapp.myapp Success
com.myapp.myapp ist in diesem Fall der Name des Pakets, das Sie zur Deinstallation verwenden müssen.
quelle
adb
direkt von "Android Studio" aus ausführen kann .Ich hatte das gleiche Problem und die
adb uninstall
Lösung funktionierte bei mir nicht.Was funktionierte war
Auch wenn ich die App zuvor deinstalliert hatte, war sie dort immer noch in der Liste.
quelle
Wenn die App verteilt werden soll, ist die
adb
Lösung für mich ein No-Go: Sie können Ihren Freund nicht bitten, das Android SDK auf seinem Computer zu installieren!Der Weg hierher besteht darin, das Attribut im Tag (das das Stammelement ist) zu bearbeiten
AndroidManifest.xml
und zu erhöhen .android:versionCode
<manifest>
Dies würde Ihre installierte Anwendung aktualisieren
quelle
Wenn Sie dies sehen , während eine Verbindung Prüfungen durchführt, stellen Sie sicher schließen .test wenn über adb deinstallieren , weil über App zu deinstallieren -> Einstellungen nicht nicht loswerden das Testpaketes erhalten
adb uninstall your.broken.package.test
wenn Sie nur über deinstallieren
adb uninstall your.broken.package
Ihr Testpaket bleibt erhalten. Dies war nur etwas, was mir bei der Verwendung der Gradle-Befehlszeile aufgefallen ist. Ich bin auf dieses Problem in Android Studio nicht gestoßen
quelle
Deinstallieren Sie die alte App von Ihrem Telefon oder Emulator und versuchen Sie erneut, sie auszuführen.
quelle
Ich habe diesen Fehler beim Versuch, die Version zu installieren, während ich das Zertifikat signiere.
behoben mit der: app Gradle Task uninstallRelease und dann installRelease erneut
quelle
Für Unity-Benutzer, die auf diese Frage kommen, ist die beste Antwort in der Tat die obige von @Ehsan
adb uninstall "com.yourapp.yourapp"
Ich hatte bereits eine frühere Version auf meinem Android-Gerät installiert und dann unter
Development Build
Unity> Build Settings ausgewählt, wodurch die APK eine andere Signatur verwendete. Wenn Sie über die Android-Benutzeroberfläche installieren, wird nicht alles entfernt, sodass Sie ADB verwenden müssen.quelle