Friday, February 20, 2009

signed apk

在發布程式至android market前程式需要使用jarsigner 加入認證,jarsigner是JDK提供的工具,至於apk的產生,在eclipse中執行run之後就會產生在專案底下的/bin中。
先建立一個目錄keytools,以及子目錄keytools/keys

D:\java\keytools>keytool -genkey -alias kkk.android.demo.location -keyalg RSA -v

alidity 20000 -keystore keys/location.keystore
輸入 keystore 密碼: password
您的名字與姓氏為何?
[Unknown]: liu
您的編制單位名稱為何?
[Unknown]: org
您的組織名稱為何?
[Unknown]: org
您所在的城市或地區名稱為何?
[Unknown]: taipei
您所在的州及省份名稱為何?
[Unknown]: TW
該單位的二字國碼為何
[Unknown]: TW
CN=liu, OU=org, O=org, L=taipei, ST=TW, C=TW 正確嗎?
[否]: 是

輸入 <kkk.android.demo.location> 的主密碼
(RETURN 如果和 keystore 密碼相同):

會產生keytools/keys/location.keystore。-v alidity是認證時間,market上需要25年的有效認證期間。
建立完key之後,要把這個key嵌入apk中,用jarsigner
D:\java\keytools>jarsigner -verbose -keystore keys\location.keystore -signedjar

Location_singned.apk Location.apk kkk.android.demo.location
Enter Passphrase for keystore: password
adding: META-INF/MANIFEST.MF
adding: META-INF/KKK_ANDR.SF
adding: META-INF/KKK_ANDR.RSA
signing: res/drawable/icon.png
signing: res/layout/main.xml
signing: AndroidManifest.xml
signing: resources.arsc
signing: classes.dex

之後在keytools/目錄下會產生Location_singned.ask,完成。

No comments:

Post a Comment