无法上传APK,因为没有找到AndroidManifest.xml而失败

时间:2013-02-03 20:58:33

标签: android xml eclipse upload apk

我在google play上创建了我的应用,当我得到APK时,我得到了这个错误:

Upload failed

Your APK cannot be analyzed using 'aapt dump badging'. Error output:

Failed to run aapt dump badging:
ERROR: dump failed because no AndroidManifest.xml found

我的项目中显然有一个AndroidManifest.xml文件,我也将.apk压缩为.zip,我也不知道是什么错误。

2 个答案:

答案 0 :(得分:0)

在Play商店上传.apk之前,有几个步骤

1.使用

生成私钥
keytool -genkey -v -keystore my-release-key.keystore
-alias alias_name -keyalg RSA -keysize 2048 -validity 10000

2.在发布模式下编译应用程序:右键单击项目,然后选择 Android工具,然后导出未签名的应用程序包,为您提供要保存.apk的位置。在成功保存之后,eclipse会提醒您接下来要做什么?

3.现在使用在第一步中生成的私钥对您的应用程序进行签名

jarsigner -verbose -sigalg MD5withRSA -digestalg SHA1 -keystore my-release-key.keystore
your_app_name.apk alias_name
如果您的my-release-key.kestore和your_app_name.apk不在同一位置,则此步骤中的

jarsigner可能会抛出错误。

4.使用zipalign工具

对齐您的包裹
zipalign -v 4 your_project_name-unaligned.apk your_project_name.apk

very clearly explained at developer.android.com

答案 1 :(得分:0)

Rahul是对的,我也在与谷歌留下的所有地雷作斗争,但由于他的洞察力,我成功完成了第3步。

我必须补充一点,JDK7用户必须使用jarsigner更改加密算法和密钥大小:

1) jarsigner -verbose -sigalg MD5withRSA -digestalg SHA1 -keystore mykeystore myApp.apk mykey

2) keytool -genkey -alias mykeystore -keyalg RSA -keysize 1024 -sigalg MD5withRSA -keystore mykey -validity 36500