2017-06-29 49 views
46

上傳新的Alpha版APK上傳新的Alpha版APK - 失敗

上傳失敗 您上傳的APK簽名無效(瞭解更多關於簽署)。從apksigner錯誤:錯誤:JAR_SIG_NO_SIGNATURES:沒有JAR簽名

不知道該怎麼做,我只是試圖讓一個Android Studio項目的Alpha版..

+2

你想上傳已簽名的apk嗎? – VishnuSP

+0

yes,unsigned ...好像我在Catch-22中,因爲我知道我不能上傳沒有簽名,但簽名,我知道可以通過谷歌播放,但要做到這一點,我必須已經有東西上傳......或者看起來,我對Android部署完全陌生,我對Android的所有知識都是活動,片段等等,很難找到關於部署的可靠資源,相當分散的信息。 –

+1

如果您嘗試上傳已簽名的apk文件[這裏是您的答案](https://stackoverflow.com/questions/44386464/android-app-installation-failed-package-com-my-app-has-no-certificates -at-entry/44387533#44387533) –

回答

123

你可以從錯誤中看到,有沒有jar簽名。在上一步選擇簽名版本(v1和v2)的複選框,然後構建apk。它會工作See this image

+1

我還沒有探索到IDE足以知道什麼窗口。 –

+3

轉到生成>生成已簽名的apk並繼續 – Sony

+7

不知道爲什麼,但它對我來說同時檢查V1和V2。昨天晚上3-4小時再過6個小時,然後檢查並與Google支持人員聊天,我不在乎爲什麼,只是很高興地繼續前進。 – jonathan3087

3

我認爲你可能只是接受Android Studio的APK註冊過程中的默認配置設置。這在大多數情況下都可以,但是如果您使用Android 7.0+,可能會產生輕微的混淆。事實上,從7.0版開始,除了「舊」版本V1之外,Android還推出了新的V2簽名方案。新方案應該提供更快的應用安裝時間,並且可以防止對APK文件進行未經授權的更改,因此它是Android Studio「生成簽名的APK」對話框中的默認方案。

問題是Google Play在你的情況下需要應用V1方案,那就是JAR簽名,而不是V2中的V2簽名。 Google Play文檔明確指出:「儘管我們建議您將APK簽名方案v2應用於您的應用,但這種新方案並非強制性的。如果您的應用在使用APK簽名方案v2時無法正確構建,則可以禁用新方案。 」。

我在這些情況下找到的解決方案是啓用兩者,如下面的屏幕截圖所示。一旦你這樣做了,簽名的APK應該被Google Play版本管理系統接受而沒有問題。

Generate Signed APK dialog box in Android Studio

這是一個完整的過程:

    Android Studio中
  1. ,選擇 「生成>選擇Build變種」,並確保該 「放」 變種選擇
  2. 選擇「生成>生成簽名APK「並輸入關於您的密鑰庫的信息。我想你已經在你之前的嘗試中創建了一個簽名APK,所以這些字段應該已經設置爲最新的值。點擊下一步]。
  3. 下一個屏幕是你必須確認V1和V2都是簽名版本,然後點擊[完成]生成APK。
+0

在我的情況下,你的第一點做到了這一點;) – basti12354