我可以将调试版本安装到模拟器上,执行以下操作:
ant debug install
但我无法安装发布版本。我的步骤:
1. ant release
2. jarsigner -verbose -keystore ..\my-release-key.keystore bin\myapp-release-unsigned.apk mykey
3. ren bin\myapp-release-unsigned.apk bin\myapp-release-signed.apk
4. zipalign -v 4 myapp-release-signed.apk myapp-release.apk
5. adb install bin\myapp-release.apk
除了我收到一条消息的最后一个步骤外,所有步骤都成功运行:
82 KB/s (388012 bytes in 4.613s)
pkg: /data/local/tmp/myapp-release.apk
Failure [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION]
我也尝试过做ant installr
代替adb install bin\myapp-release.apk
结果相同
编辑:我认为这与密钥有关,因为这是我在发布版本和调试版本之间看到的唯一区别。我使用以下方法生成了密钥:
keytool -genkey -v -keystore my-release-key.keystore
-alias alias_name -keyalg RSA -keysize 2048 -validity 10000
如上提到的http://developer.android.com/guide/publishing/app-signing.html。我修改了ant.properties
文件每http://developer.android.com/guide/developing/building/building-cmdline.html现在正在做ant release install
(而不是上面的步骤)但仍然遇到同样的问题。如果有人知道 ant 如何生成调试密钥,那么我可以按照相同的过程生成我的发布密钥,看看是否可以解决问题。
我遇到了同样的问题,因为我在 AndroidManifest.xml 文件中使用了一个字符串值,如下所示:
android:versionCode="@string/version_code"
android:versionName="@string/version_name"
其中 strings.xml 包含:
<string name="version_code">3</string>
<string name="version_name">1.0</string>
versionCode
应该是一个整数。一旦我拿出那个@string
参考我不再收到此错误,并且应用程序编译并运行得很好:
android:versionCode="3"
android:versionName="1.0"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)