webentwicklung-frage-antwort-db.com.de

Fehler [INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE]

Ich gab den Befehl unten in das CMD ein und der Befehl gab den Fehler unter dem Befehl zurück.

Befehl:

phonegap run Android --verbose --stacktrace

Error:

Fehler: Fehler beim Starten der Anwendung auf dem Gerät: 

FEHLER: APK konnte nicht auf dem Gerät installiert werden: pkg: /data/local/tmp/MainActivity-debug.apk

Fehler [INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE]

13
SPottuit

Das Problem ist, dass Sie versuchen, eine Version Ihres APK zu installieren, die WENIGER ist als die bereits auf Ihrem Gerät vorhandene.

Die Deinstallation wird dieses Problem sicherlich für Sie beheben.

ADB bietet mehr Flexibilität adb install -r -d <apk path>, aber ich bin nicht sicher, ob Phonegap über diese Funktionalität verfügt.

adb install [-lrtsdg] <file>
   - Push this package file to the device and install it
     (-l: forward lock application)
     (-r: replace existing application)
     (-t: allow test packages)
     (-s: install application on sdcard)
     (-d: allow version code downgrade)
     (-g: grant all runtime permissions)

Update:

Es stellte sich heraus, dass es sich nicht um die richtige Fehlermeldung für das Downgrade der App-Version handelt. Tatsächlich ist es etwas völlig anderes. Ich habe diesen Link gefunden der die Situation genau erklärt:

tl; dr Sie können das neue Android 6-Berechtigungsmodell nicht zuerst täuschen Veröffentlichen einer APK mit targetSdk 23, die alle Berechtigungen erteilt Runtime und Veröffentlichung einer neuen Version mit targetSdk 22 oder weniger . Sie erhalten einen INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE-Fehler.

Ich arbeitete an einer App mit targetSdk 23 (Android 6 Marshmallow) als es hat mich aufgefallen, dass es mit der neuen .__ möglicherweise eine Sicherheitslücke geben könnte. Android-Berechtigungsmodell. Android 6-Geräte genehmigen alle Berechtigungen für Installationszeit und der Benutzer muss sie bei jeder Anwendung der App genehmigen bittet um die Erlaubnis. Was ist, wenn der Benutzer die App installiert hat - auto alle Berechtigungen erteilen - und dann nicht nach deren Verwendung gefragt, und Danach wurde die App mit den gleichen Berechtigungen aktualisiert, jedoch mit mit einer niedrigeren targetSdk?

Ich habe ein paar Minuten damit verbracht, eine App zu erstellen, die auf SDK-Level 23 abzielte und fügte eine feine Standortberechtigung hinzu (ACCESS_FINE_LOCATION). Dann habe ich installiert und die App ausgeführt. Die App hat nicht um Erlaubnis für den Zugriff auf .__ gebeten. der Standortmanager Dann habe ich den SDK-Level auf 22 gesetzt und versucht, Installiere die App. Zum Glück konnte es nicht installiert werden. Ich habe eine Fehlermeldung erhalten sagen Fehler [INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE].

32
Knossos

Lösung:

Es ist mir gelungen, den Fehler zu beseitigen, indem ich meine App von meinem Gerät deinstalliere.

Ursache:

Was den Fehler wahrscheinlich verursacht hat, ist, dass ich mein Android SDK mit SDK Manager aktualisiert habe.

9
SPottuit

Ich habe diesen Fehler in VS2015 mit TACO und dem Debugging für Android mit einem bestimmten Emulatorprofil erhalten: VS Emulator 10.1 "Marshmallow (6.0.0) XHDPI Tablet. Das Projekt, an dem ich arbeitete, wurde als App für dieses bestimmte Profil installiert, da ich es war Ich habe das Problem durch Deinstallieren und erneutes Installieren des jeweiligen Profils gelöst: Tools -> Visual Studio Emulator für Android -> Profil deinstallieren. Das neu installierte Profil enthielt nicht mehr meine App und der Fehler wurde entfernt Ich denke, dass ich die App von einem entfernten Gerät aus deinstalliere.

0
pprchsvr