2015-08-29 169 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

相關問題