Sjo*_*uit 13 android command cordova cordova-cli
我在CMD中输入了下面的命令,命令返回命令下面的错误.
命令:
phonegap run android --verbose --stacktrace
Run Code Online (Sandbox Code Playgroud)
错误:
错误:无法在设备上启动应用程序:
错误:无法安装apk到设备:pkg:/data/local/tmp/MainActivity-debug.apk
失败[INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE]
Kno*_*sos 32
问题在于,您尝试安装的APK版本低于设备上已有的版本.
卸载肯定会解决您的问题.
ADB允许更大的灵活性adb install -r -d <apk path>,但我不确定Phonegap是否具有该功能.
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)
Run Code Online (Sandbox Code Playgroud)
更新:
事实证明,这不是降级App版本的正确错误消息.事实上,它是完全独立的东西.我发现这个链接准确地解释了这种情况:
tl; dr你不能通过首先发布带有targetSdk 23的APK来欺骗新的Android 6权限模型,它将授予所有权限运行时,然后发布targetSdk 22或更低版本的新版本.您将收到INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE错误.
我正在研究一个带有targetSdk 23(Android 6 Marshmallow)的应用程序,当它发现它可能是新Android权限模型的安全问题时.Android 6设备批准安装时间的所有权限,然后用户必须在应用程序请求权限时批准它们.如果用户安装了应用程序 - 自动授予所有权限 - 然后它没有要求使用它们,然后使用相同的权限更新应用程序,但使用较低的targetSdk会怎么样?
我花了几分钟创建一个针对SDK级别23的应用程序并添加了一个精确的位置权限(ACCESS_FINE_LOCATION).然后我安装并运行了应用程序.该应用程序未请求访问位置管理器的权限.然后我将SDK级别设置为22并尝试安装该应用程序.幸运的是它无法安装.我收到错误消息[INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE].
| 归档时间: |
|
| 查看次数: |
14722 次 |
| 最近记录: |