528 Stimmen

Fehler 'App nicht installiert' auf Android

Ich habe ein Programm, das im Android-Emulator funktioniert. Hin und wieder habe ich eine signierte .apk erstellt und sie auf mein HTC Desire exportiert, um sie zu testen. Es hat alles gut funktioniert.

Bei meiner letzten exportierten .apk erhalte ich die Fehlermeldung "App nicht installiert", wenn ich versuche, die .apk zu installieren. Auf den Emulatoren läuft es gut.

Da ich hauptsächlich auf den Emulatoren getestet und nur ab und zu auf ein echtes Telefon exportiert habe, bin ich mir nicht sicher, wann das passiert ist. Was ist die wahrscheinliche Ursache dafür, dass es auf einem physischen Telefon nicht installiert werden kann, aber in den Emulatoren problemlos läuft?

Ich habe versucht, das Telefon neu zu starten und die vorhandene .apk zu entfernen, aber das hat den Fehler nicht behoben.

6 Stimmen

Wenn Sie sagen, Sie hätten die vorhandene .apk-Datei entfernt, meinen Sie damit, dass Sie die Anwendung vom Telefon deinstalliert haben? Wenn nicht, deinstallieren Sie die Anwendung, bevor Sie versuchen, sie erneut zu installieren.

10 Stimmen

Was TomS sagte, laufen adb uninstall your.package.name und dann adb install /path/to.apk . Ich wüsste nicht, warum das nicht funktionieren sollte. Haben Sie irgendetwas an der Unterschriftsprozedur geändert?

2 Stimmen

Haben Sie versucht, es direkt von Eclipse in dem an den Computer angeschlossenen Gerät zu debuggen, um zu sehen, ob das Protokoll etwas mehr sagt?

5voto

Entropy1024 Punkte 7669

Am Ende fand ich heraus, dass keine Anwendungen erfolgreich installiert wurden, nicht nur meine. Ich habe die Standardeinstellung App von SD-Karte installieren auf Automatisch gesetzt. Das hat das Problem behoben.

0 Stimmen

Huawei P8 Lite, Android 6.0, hat nur: Erweitert / Speicher/Standardspeicher: intern/SDCard Es hat nicht geholfen.

5voto

mrts Punkte 13405

Mit Android Studio hatte ich zuvor die unsignierte Debug-Version der APK installiert ( Bauen > APK bauen ) und musste sie deinstallieren, bevor ich die signierte Release-Version installieren konnte ( Build-Varianten > Build-Variante: Freigabe , Erstellen > Signierte APK generieren ).

2 Stimmen

Ich habe gerade zwei Stunden mit demselben Problem verschwendet. Meine App zeigt die Version an, z.B. "3.5.6", aber sie zeigt nicht an, ob es sich um eine Debug- oder Release-Version handelt. Ich habe mit vielen verschiedenen Dateien herumgespielt und dabei den Überblick verloren und versucht, eine Debug-APK mit einer Release-APK zu aktualisieren. Ich glaube, Android hat früher eine Meldung wie "conflicting file signatures" angezeigt, aber jetzt (Pie, 9.0) bekommt man nur noch "App not installed", ohne die Möglichkeit, den Grund dafür zu finden. Eine schmerzhafte Lektion!

5voto

Avi Mistriel Punkte 51

Auch dieses Problem habe ich gelöst,

Das Problem war, dass ich meine Hauptaktivität zweimal angegeben habe, Einmal als die erste zu ladende Aktivität und ich habe auch einen Intent-Filter für sie angegeben Und noch einmal darunter habe ich sie erneut deklariert.

Achten Sie nur darauf, dass Sie Ihre Aktivitäten nicht doppelt anmelden.

0 Stimmen

WENN Sie Ihre Tätigkeit zweimal in der Manifest.xml Datei zu kompilieren, würde ein Kompilierfehler angezeigt, es sei denn, Sie haben dieselben Aktivitäten mit demselben Namen, aber in verschiedenen Paketen, ABER das funktioniert bei mir nicht, da ich alles überprüft habe.

5voto

Erstellen einer Keystore-Datei über die Befehlszeile

keytool -genkey -alias key_file_name.keystore -keyalg RSA -validity 1000000000000000 -keystore key_file_name.keystore

apk über Eclipse exportieren, Rechtsklick auf Android-Projekt Android Tools > Signiertes Anwendungspaket exportieren und geben Sie dann den Speicherort und das Passwort für den Schlüsselspeicher an.

Dies wird eine signierte apk erstellen und gleichzeitig wird die apk zipaligned. Und installierbar.

Wenn Sie die Kommandozeile für alle verwenden, kann es vorkommen, dass Sie den Fehler "Anwendung nicht installiert" sehen. (Der Fehler "Anwendung nicht installiert" kann nicht nur bei der Verwendung der Kommandozeile auftreten. Es kann auch andere Gründe geben)

4voto

SMGhost Punkte 3523

Mein Problem war ähnlich wie das von @Lunatikzx. Wegen eines falschen Berechtigungs-Tags, das als Attribut zur Anwendung geschrieben wurde:

<application
    android:permission="android.permission.WRITE_EXTERNAL_STORAGE"
    android:label="@string/app_name"
    android:icon="@drawable/ic_launcher"
    android:testOnly="false"
    android:debuggable="true">

Ich habe das Problem gelöst, indem ich das Erlaubnis-Tag in ein separates Tag wie dieses geändert habe:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X