环境:
JDK:1.5
SDK:2.1
ADT:ADT-0.9.7
IDE:myeclipse 7.5
生成密钥库请参考
http://chenjia66804610.iteye.com/blog/612180
一、IDE签名
右键点击项目名,选择Android Tools -->Export Signed Application Package,打开下图窗口
点击 “Next”
选择密钥,点击"next"
输入 Key alias 信息,点击"next"
选择签名apk的存储位置,点击"finish",签名完成
二、jarsigner签名
1、导出未签名的apk
右键点击项目名,选择Android Tools -->Export Unsigned Application Package
选择apk文件的存放位置,点击“保存”,再点击“ok”
2、用jarsigner签名,定位到未签名apk的存放路径,在cmd窗口执行以下命令
F:\android>jarsigner -verbose -keystore android.keystore -signedjar demo_signed1
.apk demo.apk android
输入口令 ,生成已签名apk demo_signed1.apk
jarsigner用法: [选项] jar 文件别名
jarsigner -verify [选项] jar 文件
[-keystore <url>] 密钥库位置
[-storepass <口令>] 用于密钥库完整性的口令
[-storetype <类型>] 密钥库类型
[-keypass <口令>] 专用密钥的口令(如果不同)
[-sigfile <文件>] .SF/.DSA 文件的名称
[-signedjar <文件>] 已签名的 JAR 文件的名称
[-digestalg <算法>] 摘要算法的名称
[-sigalg <算法>] 签名算法的名称
[-verify] 验证已签名的 JAR 文件
[-verbose] 签名/验证时输出详细信息
[-certs] 输出详细信息和验证时显示证书
[-tsa <url>] 时间戳机构的位置
[-tsacert <别名>] 时间戳机构的公共密钥证书
[-altsigner <类>] 替代的签名机制的类名
[-altsignerpath <路径列表>] 替代的签名机制的位置
[-internalsf] 在签名块内包含 .SF 文件
[-sectionsonly] 不计算整个清单的散列
[-protected] 密钥库已保护验证路径
[-providerName <名称>] 提供者名称
[-providerClass <类> 加密服务提供者的名称
[-providerArg <参数>]] ... 主类文件和构造函数参数