給你的程序簽名

給你的程序簽名

注意事項:

  • 所有提交到Market的程序必須經過簽名。未經簽名的程序不能安裝。

  • 你可以使用個人證書去簽名程序,不一定要經證書機構授權。

  • 用Debug版本證書籤名的程序將不能發佈。

  • 在安裝程序時會檢測簽名證書是否過期。如果程序在安裝後證書過期,程序也能正常使用。

  • 你可以使用keytool和Jarsigner產生密鑰並簽名你的程序。

  • l你的程序在簽名後還需要使用zipalign去優化。

建議:

  • 用同一密鑰簽名所有程序,以保證程序的無縫升級。

  • 證書的有效期最好在25年以上。發佈到Market的程序中證書有效期必須在2033年10月22日以後。


如何簽名

除了下面提到的方法,還有一種利用GUI來編譯的方法。

在Eclipse中Package Explorer裏選擇要編譯的工程,File->Export, 打開Android文件夾,選擇Export Android Application,一步一步完成嚮導即可。這樣程序就會編譯,簽名,優化,可以直接發佈到Market了。 獲取合適的私有密鑰

通過Keytool去產生私有密鑰。Keytool在JDK/bin目錄裏(比如C:\Program Files\Java\jdk1.6.0_20\bin)。


Keytool參數

描述

-genkey

生成公鑰和私鑰

-v

輸出詳細信息

-keystore <keystore-name>.keystore

生成的keystore文件名

-alias <alias name>

此密鑰的別名。只保留前8位字符

-keyalg <alg>

加密算法。支持DSA和RSA

-dname <name>

用於描述此密鑰的創建者信息。如果沒有提供,Jarsigner會提示你輸入這些信息

-validity <valdays>

密鑰有效期,按天數。最好>10000


例如:keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -validity 10000更多關於keytool的信息:http://java.sun.com/j2se/1.5.0/docs/tooldocs/#security


編譯Release版本程序

在release狀態下程序是未經簽名的。在Eclipse中導出未經簽名的release版本apk文件。在Package Explorer中找到要編譯的工程,右擊選擇Android Tools->Export Unsigned Application Package


用私有密鑰簽名

通過Jarsigner來使用私有密鑰簽名。

例如:jarsigner -verbose -keystore my-release-key.keystore my_application.apk alias_name

驗證已簽名程序:jarsigner -verify my_signed.apk


優化APK文件

通過zipalign來優化apk文件。Zipalign可以在Andorid SDK/tools目錄下找到。

例如:zipalign -v 4 your_project_name-unaligned.apk your_project_name.apk

your_project_name-unaligned.apk是輸入,your_project_name.apk是輸出。如果要覆蓋已有文件,需要加上-f參數


添加版本信息

主要有兩方面,一個是程序的版本號,另外一個是程序中要求的系統API版本號。二者都需要在AndroidManifest.xml中設定。 程序版本號

Android:versionCode: int類型,只能是整數。別的程序在調用時要用到,最終用戶無法看到。

Android:versionName: 字符串類型。就是給最終用戶看的。 程序要求的系統API版本號

Android:minSdkVersion: 要執行此程序需要的最低的系統API版本

Android:targetSdkVersion: 此程序設計時的目標系統API版本

Android:maxSdkVersion: 此程序設計時支持的最高的系統API版本


準備發佈

發佈前的檢查列表:

在考慮發佈程序之前

1. 在真實設備上進行完整的測試

2. 考慮在程序中添加最終用戶許可協議

3. 在程序中添加圖標和標題

4. 關閉並清理log和debug信息

在進行最後的編譯之前

5. 添加版本號

6. 獲取合適的密鑰

7. 如果用到了Mapview元素,請註冊Maps API key

在程序編譯完成後

8. 對程序進行簽名

9. 測試編譯好的程序


發佈程序到Android Market

1. 註冊賬號:http://market.android.com/publish

2. 在提交程序之前,必須確保程序符合Android Market 服務器的要求:

(1) 對程序簽名的私有密鑰有效期必須在2033年10月22日之後。

(2) 程序中必須設定了android:versionCode和android:versionName。前者用於程序的更新,後者會展示給最終用戶。

(3) 在程序的manifest中必須定義了android:icon和android:label。

if ($ != jQuery) { $ = jQuery.noConflict(); }


步驟如下


1、上傳你的.apk文件。(必填)
2、假如2張遊戲截圖,要求320w x 480h, 480w x 800h, 或480w x 854h,24 bit PNG or JPEG圖片。(必填)
3、上傳高清icon,要求512w x 512h的24 bit PNG or JPEG圖片,最大1024KB。(必填)
4、上傳特寫圖片,要求1024w x 500h的24 bit PNG or JPEG圖片。(選填)
5、促銷視頻。首先需要上傳到youtube,然後把鏈接放到這裏。(選填)
6、勾選後選擇退出市場,需要60天生效。
7、選擇語言。目前還沒有簡體中文。選擇語言後,需要去掉不必要的語言。
8、寫標題。(用所選語言填寫,最多30個字母)
9、寫描述。(用所選語言填寫,最多4000個字母)
10、寫將要出的下一個版本的變化,也就是我們說的新版本更新內容。(英文,最多500個字母)
11、產品促銷廣告文字。(英文,最多80個字母)
12、選應用類型(應用類、遊戲類)
13、選app種類
   如果之前選的是應用類,則顯示如下種類:
   comics 漫畫
   communication 通訊
   demo 演示
   entertainment 娛樂
   finance 財務,財經
   health 健康
   lifestyle 生活
   multimedia 多媒體
   news & weather 新聞與天氣
   productivity 生產
   reference 參考
   shopping 購物
   social 社會
   software libraries 軟件庫
   sports 體育
   themes 主題
   tools 工具
   travel 旅遊
   如果之前選的是遊戲類,則顯示:
   arcade & Action 動作冒險類
   brain & puzzle 益智解密類
   cards & casino 棋牌賭博類
   casual 休閒類
14、填入價格。有免費與付費可選。注:這裏如果選定免費,則以後不可以改成付費。
15、複製保護:如果選off ,則改應用可以被複制。如果選on,谷歌會有措施保護拷貝情況。
16、選擇內容級別:分mature(適合成人)、teen(適合十幾歲合同)、pre-teen(適合10歲之前的兒童)、all(適合所有)
17、選擇區域:可選擇在全球範圍展示,也可以選擇某幾個國家。
18、填入官方網站。
19、聯繫信箱。
20、聯繫電話。
21、選中,則表示:我的軟件遵守android內容條款。
22、選中,則表示:我承認我的軟件受美國出口法支配,不管我在哪個國家和地區。我同意我將遵守所有相關法律,包括申請人信息的加密功能。我在此證明我的軟件是經過授權的從美國出口。
然後點publish發表軟件。
也可點save保存或點delete刪除。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章