2011-12-17 158 views
0

我開發了一個Android應用程序,並可以使用Eclipse插件簽名,但我想用jarsigner和zipalign手動簽名,以便我可以選擇算法和密鑰大小自。手動簽名android應用程序無法正常工作

我創建了一個密鑰庫使用此命令:

keytool -genkey -v -keystore keystore_name -alias alias_name -keyalg RSA -keysize 2048 -validity 10000 

我的第一個問題是,我不能與Eclipse插件輸入密鑰存儲。它說:

Keystore was tampered with, or password was incorrect 

所以我還是繼續進行的jarsigner這樣的:

jarsigner -verbose -keystore keystore_name my_application.apk alias_name 

,它工作正常。 終於我運行該工具zipaling:

zipalign -v 4 inputfile.apk outputfile.apk 

我可以發佈我的應用程序在市場上沒有任何麻煩。但是當朋友下載我的應用程序時,他得到錯誤:Package file was not signed correctly

此外,我無法安裝我的應用程序手動簽名。但是,與Eclipse插件簽署的版本工作正常。

現在我遇到的大問題是,我無法上傳新的apk文件做市場,因爲它說它是用其他證書籤名的。 我能做什麼?

+0

您是否嘗試過簽署其他應用程序以查看是否發生了同樣的事情?您是否嘗試過使用DSA加密方法來查看是否存在相同的問題? – dmarges 2011-12-17 21:20:44

+0

不,我沒有,但我的問題是,我有一個腐敗的應用程序在我的帳戶,並不能讓它的作品,因爲它沒有正確簽署,我不能上傳一個新的簽署的版本工作 – c0nstan 2011-12-17 21:24:11

+0

好吧,我可以解決1個問題。密碼中不允許&符號。沒有這個符號,我可以用Eclipse Plugin輸入我的密鑰庫 – c0nstan 2011-12-17 21:53:53

回答

0

不知道這是否會幫助,但我遇到過類似的問題。想我用的jarsigner像這樣的一些東西,它一直在微細加工後再:

jarsigner -verbose -digestalg SHA1 -sigalg MD5withRSA -keystore %path to key store here% -signedjar %the name you want for your signed apk here% %the apk you want to sign here% your.keystore 

編輯:

只注意到你的問題是什麼,以與市場上的應用程序做。我在那裏沒有幫助。抱歉。

0

驗證keytool您使用:如果

which keytool 

檢查它設置爲OpenJDK的... Android支持只有太陽/ Oracle的Java作爲密鑰工具。