Android Studio发布版不是zipaligning

时间:2016-06-10 11:21:09

标签: android android-studio google-play apk android-studio-2.2

我在将.apk上传到Google Play商店时遇到问题。我以前能够在上周上传多个不同的版本,但今天我收到的错误是我应该先将文件压缩到文件中。

编辑:通常情况下,我能够通过内置Android工作室" Generate Signed APK"生成AppStore接受的签名和压缩签名.apk。向导。这在今天不起作用,并导致以下结果:

我已尝试过以下

    Android工作室生成的app-release.apk的
  • 手动zipalign 。当我尝试这个时,我得到错误"验证失败"在末尾。一些谷歌搜索说,提供一个完全路径到你有写访问权的位置是很重要的,所以我尝试用特定的路径做,但无济于事:

    ./zipalign -v -f 4 /Users/<username>/git/<projectname>/app/app-release.apk /Users/<username>/git/<projectname>/app/aligned.apk

  • 然后我尝试下载 APK Signer 1.8.5 并使用它来压缩.apk - 看哪,成功!它创建了一个对齐的apk,我可以使用Android Studio自己的zipalign工具验证它

    ./zipalign -c -v 4 app-release_ALIGNED.apk

    和APK Signer本身。但是,上传时我现在收到错误:

    Failed to run aapt dump badging: W/ResourceType(208730): Bad resource table: header size 0x80a3 or total size 0x80b50000 is larger than data size 0x7bcc4 ERROR: dump failed because the resource table is invalid/corrupt.

    这个,我还没能找到解决方案。

  • 然后我尝试重新创建环境我以前能够通过恢复到之前的提交/构建来上传APK,以及从AS 2.2预览3恢复到AS2.2预览2,但再次 - 没有运气。

  • 最后,我尝试明确添加

    zipAlignEnabled true

    到我在Gradle中的发布配置,但这也没有帮助。

我提出建议,并希望有人可以提供帮助? :-)谢谢

2 个答案:

答案 0 :(得分:4)

最后,尤里卡!

我在root build.gradle中随机偶然发现了这一行:

classpath 'com.android.tools.build:gradle:2.2.0-alpha3'

Android Studio 2.2预览3需要这个gradle构建工具升级,我刚刚按下了#34;确定,继续&#34;一如既往。我很好奇,并试图把它改回到最后的作品,

classpath 'com.android.tools.build:gradle:2.2.0-alpha2'

并在Android Studio预览版2中构建了项目 - 瞧,它有效!似乎alpha3版本存在一个错误。

我希望这有助于某人。我知道我是一个快乐的星期五露营者,这是肯定的! :-)

自我注意:无论我的朋友和同事推动多少,不要在未来依赖金丝片构建生产应用程序。

答案 1 :(得分:3)

以下是我几天前遇到的事情:一次尝试一次:

  • 下载在IO会议期间发布的Android Studio 2.2 Preview 2后,我成功运行了我的代码,直到有时间将更新版本的apk发布到Playstore。那就是地狱破裂的时候!
  • 我搜遍了所有但我一无所获。因此,有人建议采用以下方法:生成已签名的apk后,解压缩并删除META-INF文件夹,然后重新打包并通过终端手动签名。将文件打包成.apk格式很简单:只需使用zip扩展名,然后重命名扩展名。
  • 虽然这似乎对我有用,但事实并非如此。它虽然适用于其他人。
  • 最后,我意识到这是由最新的Android Studio Preview 2中的错误引起的。
  • 幸运的是,我仍然拥有我打开的稳定2.1版本,加载了我的项目和Boom!它像我预期的那样工作。

所以,请尝试最后一个选项,先清理项目,然后再试一次。我知道这有多么令人沮丧。祝你好运!