01_Android应用开发环境_05_签名android应用程序

背景:

Android项目以他的包为唯一标识,如果一台设备上安装了两个包名相同的应用,后安装的应用就会覆盖前面安装的应用。

目的:

为了避免覆盖的情况,Android要求对作为成品的应用进行签名。

作用:

确定发布者身份。

确保应用的完整性。

在Eclipse的ADT插件或Ant工具会自动生成调试证书对Android应用签名。如果要正式发布一个Android应用,必须使用合适的数字证书来给应用程序签名,不能使用ADT或者Ant工具生成的调试证书来发布。

在Eclipse中对Android应用签名

1、右击项目,Android Tools→Export Singned Application Package…

2、如果系统中没有数字证书,可以在窗口中选择"Create new keystore"单击按钮,填写数字证书的存储路径和密码。

image

3、填写完成后Next,Eclipse将会弹出让用户填写数字证书的详细信息。

image

4、Next,指定生成签名后的APK安装包的存储路径。

image

5、Finish。这样就会在指定目录下生成一个签名后的APK安装包。

一旦数字证书制作完成,以后就可以最直接使用该证书签名了。

使用命令对APK进行签名

1、创建keysrore库,JDK的安装目录下面的BIN中有一个keytool.exe工具生成数字证书。

keytool -genkeypair    -alias    -keyalg   -validity   -keystore 

  • -genkeypair:指定生成数字证书
  • -alias:指定生成数字证书别名
  • -kayalg:指定生成数字证书的算吗,使用RSA算法
  • -validity:指定生成的数字证书的有效期
  • -keystore:指定所生成的数字证书的存储路径
输入命令后回车,接着安装交互式界面输入相关参数。

2、生成为签名的apk,Android Tools→Export Unsigned Application Package…

3、使用jarsigner命令对未签名的APK进行签名,JDK的Bin子目录下面

jarsigner -verbose -keystore -signedjar

说明:

  • -verbose:指定生成详细输出
  • -keystore:指定数字证书存储路径
  • -singedjar:有三个参数分别是签名后apk包、未签名的APK包、数字证书的别名。
  • 回车,以交互的方式输入数字证书keystore的密码。

4、使用zipalign.exe工具优化APK安装包。

zipalign -f -v 4 a.apk a_zip.apk

  • -f:指定强制覆盖已有文件
  • -v:指定生成详细输出
  • 4:指定档案整理所基于的字节数,通常指定为4,也就是基于32为进行整理。
  • a.apk、a_zip.apk:分别指定整理前的APK和整理后生成的APK。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、下4载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、下4载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值