2010-11-24 226 views
15

我想籤我的Android應用程序的發佈版本(調試簽署罰款)爲谷歌地圖API:的keytool簽名問題:密鑰庫被篡改,或密碼不正確

keytool -list -alias cancertrials -keystore /Users/syalam/Documents/workspace/Cancer_Trials/keys/release -storepass android -keypass cancertrials 

,但我得到錯誤:

java.io.IOException: Keystore was tampered with, or password was incorrect 

我肯定密碼是正確的,因爲當我嘗試我的應用程序導出在Eclipse中,它要求密鑰庫和密碼,我在正確地進入。

不確定爲什麼我不能簽名?我需要以發佈模式顯示Google地圖(在調試模式下工作)。

回答

24

我不認爲你必須包括一個商店通行證,當你只是做一個列表。 storepass加密在做列表時不顯示的私鑰。試試這個:

keytool -list -keystore /Users/salam/Documents/yada/yada 

然後在出現提示時提供您的密鑰庫密碼。如果可行,那麼你可以嘗試命令行上的keypass。

您可能還想檢查並確保使用相同版本的Java。我不認爲這是問題所在,但如果上述內容無法幫助您嘗試。

+1

這很好。希望谷歌已經在他們的文檔中寫過這些,會讓我頭疼! – 2010-11-24 04:40:09

2

當我切換回1.6.0_29 jarsigner正常工作時,jdk1.6.0.31上的jarsigner出現同樣的問題。請注意jdk版本。

2

檢查您的別名一次。有時你的別名與keytool別名不同,那麼它會給出相同的錯誤。 即

5

不知何故在Windows上,keytool不接受密碼。我只需要使用SHA1密碼在google開發控制檯上的項目上配置客戶端ID。以下似乎適用於我

keytool --list --keystore android.jks --protected 

這將打印所有別名的SHA1鍵。

+0

這適用於我,謝謝! – StevenTB 2016-05-18 14:03:08

0

keytool -list -keystore "Path of the keystore"

此命令將在linux機索要密碼,而在Windows機器上,你只需要進入榜單密鑰庫。

相關問題