2011-06-01 52 views
0

薩拉姆所有,辭去我的應用程序使用相同的密鑰庫失敗

我創建使用Eclipse的Android 2.2的應用程序,我一直在使用,我已經創建了一個密鑰庫簽署,然後我把它上傳到市場。

我已經做了應用中的一些變化,我已經從1.0 TP 1.1改變了應用程序的版本,然後我試圖簽署新生成的.apk文件,但我得到了以下錯誤:

的jarsigner :無法登錄罐子:java.util.zip.ZipException:無效輸入壓縮後的大小(預期525,但得到527個字節)。

當您嘗試唱簽署.apk文件時出現此錯誤,我已經產生,從Eclipse的一個無符號的apk和我的應用程序簽署successfuly。

現在市場拒絕我的新簽署的應用程序,我想,第一個版本是由Eclpise和我的密鑰庫簽約,現在我不能讓雙方簽署了新的版本。這是真實的分析嗎?

我在做什麼錯?

回答

1

爲了得到一個無符號的APK在Eclipse中,右鍵單擊應用程序的名稱在Package Explorer窗口中,選擇Android的工具,然後選擇「導出未簽名的應用程序包...」。將包保存到新的位置。 一旦你有一個未簽名的apk。運行您在未簽名的apk文件上使用的jarsigner命令。

$ jarsigner -verbose -keystore my-release-key.keystore my_application.apk alias_name  
    $ jarsigner -verify my_signed.apk  
    $ jarsigner -verify -verbose -certs my_application.apk  

注意:如果您看到「CN = Android Debug」,則表示.apk已使用Android SDK生成的調試密鑰進行簽名。如果您打算釋放您的應用程序,則必須使用您的私鑰而不是調試密鑰對其進行簽名。

$ zipalign -v 4 your_project_name-unaligned.apk your_project_name.apk  
    $ zipalign -c -v <alignment> existing.apk  

來源: http://forum.xda-developers.com/showthread.php?t=492822 http://developer.android.com/guide/developing/tools/zipalign.html

這個固定我的問題

相關問題