2012-11-26 31 views
1

什麼是生成apk文件以使用Eclipse將我的應用程序提交給Amazon的最佳方式?什麼是生成一個apk文件使用Eclipse提交應用程序到亞馬遜的最佳方式是什麼?

我嘗試使用Android的工具 - >導出未簽名的應用程序包...... 但是當我通過電子郵件發送的apk我的Kindle Fire,並嘗試進行安裝,安裝失敗,「應用程序安裝失敗」

如果我抓取eclipse在bin文件夾中生成的apk並通過電子郵件發送給我自己,那麼它在Kindle上安裝得很好,但這是一個調試版本。

我想製作一個發佈版本,它將成爲我提交給亞馬遜的版本,我還可以無線安裝到我的Kindle進行測試。我想測試我提交給亞馬遜的相同版本。但我不知道如何生成構建提交給亞馬遜。

謝謝!

+0

嗨mikemeli,你是如何爲apk文件簽名的?和谷歌一樣嗎? –

回答

3

你有喲簽名你的APK來安裝它。如果你想提交它,你應該生成一個APK密鑰並妥善簽名。

,如果你想「測試」,你可以發送APK位於你的/ bin中/文件夾中的裝置,該裝置會自動調試標誌簽署

+0

所以,生成一個apk來提交給亞馬遜是一樣的谷歌?我需要使用密鑰庫並在Eclipse中使用導出功能?我以爲我在某處讀到亞馬遜爲你簽名的apk。 – mikemeli

+0

我嘗試給自己發送郵件給自己使用eclipse中的導出功能簽名的apk到kindle,並且它被安裝罰款(不得不卸載以前的調試版本當然)。所以我假設我必須向亞馬遜提交簽署的API。 – mikemeli

+0

雖然沒有聽說過,但聽起來很荒謬,你必須在亞馬遜上繼續簽名,然後在簽名時上傳它,然後再上傳它。 –

0

亞馬遜必須把他們的DRM模塊插入APK文件;因此,您必須在此之後簽名,因爲在簽名的APK文件中寫入任何內容都會使簽名無效。通過下面的鏈接,詳細描述瞭如何手動簽署APK文件:

http://developer.android.com/tools/publishing/app-signing.html

爲了與亞馬遜澄清案件:使用Eclipse

1-出口未簽名的APK文件,這文件發送到亞馬遜爲了讓他們把DRM放進去。

2-使用keytool實用程序創建證書,如參考文獻的步驟1中所述。 (你必須爲此使用一個命令外殼程序(cmd),不要忘記爲keytool.exe設置正確的路徑,它應該位於你的java sdk的bin目錄中;例如「C:\ Program Files(x86 )\ Java \ jdk1.6.0_27 \ bin「)。

您可以在導出已簽名的應用程序時重新使用Eclipse創建的證書,而不是創建一個新的證書。

不要忘記,您將不得不重複使用相同的證書來創建升級;所以不要忘記各種密碼!您必須使用jarsigner工具爲APK簽名(經亞馬遜修改後),之後,您必須使用zipalign工具對齊APK;然後,如參考文獻中所述。與其他兩個工具相反,zipalign工具位於android-sdk-windows目錄的tools目錄下;所以將這個工具目錄添加到你的路徑中也是明智的。

+0

爲了記錄,我昨天將使用Eclipse中的導出功能發佈到Amazon的簽名版本發佈到了亞馬遜,並且我的應用程序已被接受並且今天出售。我不得不做別的! – mikemeli

+0

我剛剛做了一個快速檢查,事實上,如果您選擇不使用DRM或如果您仍然想使用它,您可以向Amazon發佈一個簽名的APK,亞馬遜會使用與您的相關證書爲您簽名APK帳戶。然而,如果您稍後想要集成第三方API(如Google地圖或Facebook SSO),後者可能會導致您陷入麻煩,因爲您不知道用於簽署APK的證書,並且需要登錄這兩個API。這個信息是從http://stackoverflow.com/questions/6217867/questions-about-preparing-an-apk-for-the-amazon-android-app-store – SylvainL

+0

作爲第二個評論,即使當你不想要要使用Amazon DRM模塊,導出未簽名的APK並讓亞馬遜簽名是個好主意,因爲這樣,兩個市場的簽名將會不同。這將使您能夠使用http://stackoverflow.com/questions/5480235/supporting-amazon-and-android-market-links-inside-application?lq=1中提供的代碼區分APK中的這些內容你後來希望發佈一個鏈接回到這些市場。 – SylvainL

0

您可能還想確保AndroidManifest.xml文件中的圖標是512x512分辨率,否則看起來有點像素化。

<application android:persistent="true" 
    android:hardwareAccelerated="true" 
    android:icon="@drawable/launcher_icon_512x512" 
    android:label="@string/app_name" > 
相關問題