更改提取的APK中的文件时,我将其重新压缩,将扩展名更改为.apk,然后按以下方式安装:
$adb install CustomAPK.apk 2831 KB/s (41896599 bytes in 14.450s) pkg: /data/local/tmp/CustomAPK.apkFailure [INSTALL_PARSE_Failed_UNEXPECTED_EXCEPTION]
这是怎么回事
解决方法:
生成密钥并签名apk:Android Developer Website
Signing Your App Manually总结You do not need AndroID Studio to sign your app. You can sign your app from the command line using standard tools from the AndroID SDK and the JDK. To sign an app in release mode from the command line:
Generate a private key using keytool. For example:
$keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -valIDity 10000
本示例提示您输入密钥库和密钥的密码,并提供密钥的专有名称字段.然后,它将密钥库生成为名为my-release-key.keystore的文件.密钥库包含单个密钥,有效期为10000天.别名是您在以后对应用程序进行签名时使用的名称.
在发布模式下编译您的应用,以获取未签名的APK.
使用jarsigner使用私钥对应用程序签名:
$jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore my_application.apk alias_name
本示例提示您输入密钥库和密钥的密码.然后,它就地修改APK以对其进行签名.请注意,您可以使用不同的键多次对APK进行签名.
确认您的APK已签名.例如:
$jarsigner -verify -verbose -certs my_application.apk
使用zipalign对齐最终的APK包.
$zipalign -v 4 your_project_name-unaligned.apk your_project_name.apk
zipalign确保所有未压缩的数据以相对于文件开头的特定字节对齐开头,从而减少了应用程序消耗的RAM数量.
以上是内存溢出为你收集整理的android-adb-[INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION]全部内容,希望文章能够帮你解决android-adb-[INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION]所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)