2015-08-29 28 views
0

我真的很奇怪的问题。几年前,我编写了一个用Eclipse编写的应用程序。然后我升级到Android Studio 0.4.3一切正常,但现在我删除了这个AS并使用新版本(Android Studio 141.xxxx)。更新后的Genarate签名APK Android Studio

的问题是,我用同样的JKS证书,但上传到 后,谷歌Play商店我看到在手指 打印差异通信。

您上传了一张使用其他证书签名的APK至 以前的APK。您必须使用相同的证书。您现有的 APK使用带有指纹的证书进行签名:

[SHA1:D0:D9:BE:8B:D2:6A:5F:xxxxxxxxxxxxxxxxxxxx:F4:D9:91:66:06 :12]

和证书(或多个)用于签署APK您上传指纹(或多个):

[SHA1:DA:53:9F:A7:D3:3C:8D:XXXXXXXXXXXXXXXXXXXX:CE :1F:F2:AB:0B:64]

我试过签署我的应用程序手册,但然后我有这个沟通。

上传失败,您上传的APK无效或缺少签署一些文件 信息。您需要创建一个有效的签名 APK。详细了解签名。

任何人有想法吗? Here是类似的问题,但没有答案。

回答

1

Okey ...最后我解决了这个问题。但我仍然不知道为什么会发生。

首先我要确保我之前

jarsigner -verify -verbose:summary -certs old.apk 
jarsigner -verify -verbose:summary -certs new.apk 

证书看起来一样使用相同的JKS。所以我建立我的申请并用我的证书签名。但它不起作用。

所以我把它手动

  1. 我打开我的apk文件用WinRAR,然后删除META-INF从应用程序释放小unaligned.apk DIR (应用程序\编译\输出\在APK我的情况)
  2. 粘贴zipalign.exe与我的应用程序释放小unaligned.apk
  3. 打开CMD文件夹与您的APK (Shift +右键+文件夹“在这里打开命令窗口”。)

然后我手动使用jarsigner然后zipalign.exe

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore key.jks -storepass MYPASSWORD app-release-unaligned.apk 1 

zipalign -f -v 4 app-release-unaligned.apk app-release.apk 

然后我将app-release.apk上传到Google Console。一切都很好;)

0

我相信你的问题是你上传你的apk而不使用自己的密钥存储文件。 在IDE版本之间该文件可能已更改。

参考这个答案的解释为什么这是一个问题: https://stackoverflow.com/a/4843261/3497739

而且阅读参考页,以了解如何正确签署APK https://developer.android.com/tools/publishing/app-signing.html

好运

+0

你不明白我的问题。我不删除或修改我的JKS文件。我有同样的。但是JKS使用Android Studio 0.4.3而不是使用141.xxxx。任何想法? – EliaszKubala

+0

我只是用0.4.2来登录apk,它是Play Store的okey apk。所以,JKS它是okey。 – EliaszKubala

+1

您确定您的apk文件是使用您的密钥存储文件签署的,而不是默认的文件? 您应该在您的Gradle版本构建中具有以下行:signingConfig signingConfigs.myKey – maxandron

0

可能密钥库中的问题。

您上传了使用不同证书签名的APK到先前的APK。您必须使用相同的证书。您的现有APK使用带有指纹的证书进行签名:

[SHA1:D0:D9:BE:8B:D2:6A:5F:xxxxxxxxxxxxxxxxxxxx:F4:D9:91:66:06: 12]

和证书(或多个)用于签署APK您上传指纹(或多个):

[SHA1:DA:53:9F:A7:D3:3C:8D:XXXXXXXXXXXXXXXXXXXX:CE: 1F:F2:AB:0B:64]

这意味着您使用不正确的密钥库,而不是您用来签署APK以前版本的密钥库。

确保您使用相同的密钥库文件。如果相同 - 重新生成密钥。

+0

什么意思是再次生成密钥? – EliaszKubala

+0

我只是用0.4.2来登录apk,它是Play Store的okey apk。所以JKS是okey。 – EliaszKubala

相关问题