百度應(yīng)用平臺(tái)認(rèn)領(lǐng)應(yīng)用需要下載空包APK褐缠,對(duì)其進(jìn)行簽名再上傳辰狡,已重新上傳應(yīng)用。
需要在 Java 環(huán)境下運(yùn)行代碼辐脖。
第一次我是直接在 jdk/bin 下執(zhí)行的(將需要簽名的空包 unsigned.apk 放到 bin 目錄下)
代碼如下:
jarsigner -verbose -keystore secret_key.keystore -signedjar signed.apk unsigned.apk alias
參數(shù):
-jarsigner bin 目錄下的jar包
-verbose 顯示輸出動(dòng)作
-keystore 密鑰庫(kù)位置 我這里將 secret_key.keystore 秘鑰文件放到 bin 目錄下,所以直接寫秘鑰文件名稱
-signedjar signed.apk unsign.apk alias 三個(gè)參數(shù)依次為:簽名后的apk 未簽名的apk 別名
第二次是在 bin 目錄外邊的僵娃,不用將需要的秘鑰和apk空包放到bin目錄下
jarsigner -verbose -keystore D:\secretKey\secret_key.keystore -signedjar F:\xunlei\signed.apk -digestalg SHA1 -sigalg MD5withRSA F:\xunlei\Baidu_Claim_unsigned.apk alias
新增參數(shù):
-digestalg 摘要算法的名稱
-sigalg 簽名算法的名稱
jarsigner命令的一些選項(xiàng)
[-signedjar <文件>] 已簽名的 JAR 文件的名稱
[-verbose] 簽名/驗(yàn)證時(shí)輸出詳細(xì)信息
[-keystore ] 密鑰庫(kù)位置
[-digestalg <算法>] 摘要算法的名稱
[-sigalg <算法>] 簽名算法的名稱
[-storepass <口令>] 用于密鑰庫(kù)完整性的口令
[-storetype <類型>] 密鑰庫(kù)類型
[-keypass <口令>] 專用密鑰的口令(如果不同)
[-sigfile <文件>] .SF/.DSA 文件的名稱
[-verify] 驗(yàn)證已簽名的 JAR 文件
[-certs] 輸出詳細(xì)信息和驗(yàn)證時(shí)顯示證書
[-tsa ] 時(shí)間戳機(jī)構(gòu)的位置
[-tsacert <別名>] 時(shí)間戳機(jī)構(gòu)的公共密鑰證書
[-altsigner <類>] 替代的簽名機(jī)制的類名
[-altsignerpath <路徑列表>] 替代的簽名機(jī)制的位置
[-internalsf] 在簽名塊內(nèi)包含 .SF 文件
[-sectionsonly] 不計(jì)算整個(gè)清單的散列
[-protected] 密鑰庫(kù)已保護(hù)驗(yàn)證路徑
[-providerName <名稱>] 提供者名稱
[-providerClass <類>] 加密服務(wù)提供者的名稱
[-providerArg <參數(shù)>] … 主類文件和構(gòu)造函數(shù)參數(shù)