转载自:http://www.cnblogs.com/timeng/archive/2012/02/17/2355513.html

今天看了一篇关于android数字签名的讲解,通俗易懂,非常好,所以转载过来分享。

为什么要签名???

开发Android的人这么多,完全有可能大家都把类名,包名起成了一个同样的名字,这时候如何区分?签名这时候就是起区分作用的。

由于开发商可能通过使用相同的Package Name来混淆替换已经安装的程序,签名可以保证相当名字,但是签名不同的包不被替换。

APK如果使用一个key签名,发布时另一个key签名的文件将无法安装或覆盖老的版本,这样可以防止你已安装的应用被恶意的第三方覆盖或替换掉。

这样签名其实也是开发者的身份标识。交易中抵赖等事情发生时,签名可以防止抵赖的发生。

签名的注意事项

  • 所有的Android应用都必须有数字签名,没有不存在数字签名的应用,包括模拟器上运行的。Android系统不会安装没有数字证书的应用。
  • 签名的数字证书不需要权威机构来认证,是开发者自己产生的数字证书,即所谓的自签名。
  • 正式发布一个Android应用时,必须使用一个合适的私钥生成的数字证书来给程序签名,不能使用ADT插件或者ANT工具生成的调试证书来发布。
  • 数字证书都是有有效期的,Android只是在应用程序安装的时候才会检查证书的有效期。如果程序已经安装在系统中,即使证书过期也不会影响程序的正常功能。

签名的方法

1:打开Eclipse->选择你要签名的项目->右击->android tools->Export signed Application package 弹出如下窗口

2:选中你要签名的项目,然后next,

因为我们是第一次签名,还没有签名证书,所以先create new keystore,以后就不用再创建了,直接选择已存在的证书。

选择证书保存的位置,填入密码,然后next,

3:

填写签证的信息,包括:别名,密码,有效期,姓名,组织,组织名称,所在城市,所在省份,国家等,然后finish。

4:最后弹出一个窗口,选择你要保存apk包的位置。

点击finish之后,稍等片刻就生成了你自己的Android安装包了。

更多相关文章

  1. Android——TV真机调试apk(android:sharedUserId="android.uid.sy
  2. Android——编译release版签名系统
  3. Android(安卓)studio 获取应用签名
  4. Android如何使用WebView访问https的网站
  5. Android(安卓)Studio 默认keystore 以及自定义keystore
  6. Android(安卓)上 Https 双向通信— 深入理解KeyManager 和 Trust
  7. android SystemClock设置系统时间需要system权限
  8. Android(安卓)中文api,Debug签名证书过期(Expiry of the Debug Cer
  9. android 电子签名 手写签名 功能实现

随机推荐

  1. RelativeLayout常用属性
  2. Android 调试:java 跨工程调试 android 项
  3. textview 小结
  4. android计算器布局界面——基础编
  5. Android 的manager
  6. Android Architecture
  7. Android中各种ontouch事件
  8. Android(安卓)利用addView 动态给Activit
  9. Android ADB=Android Debug Bridge帮助信
  10. Android 自定义控件打造史上最简单的侧滑