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

------------------------------------------------------------------------------------------------------

为什么要签名???

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

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

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

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

签名的注意事项

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

签名的方法

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

image

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

image

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

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

3:

image

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

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

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

更多相关文章

  1. android 调用系统安装程序
  2. android 程序日志记录
  3. 让Android Studio支持系统签名(证书)
  4. Android系统中自带了很多图标,我们的程序可以方便使用。
  5. Android keytool 生成证书MD5指纹
  6. 在程序中设置android:gravity 和 android:layout_Gravity属性 .
  7. android 程序调试出现source not found的问题
  8. android不是内部或外部命令,也不是可运行的程序或批处理文件
  9. :Android实现程序前后台切换效果

随机推荐

  1. android+mina 开发环境搭建
  2. android:descendantFocusability用法简析
  3. Android项目打包异常:Lint found fatal er
  4. TraceView性能检测
  5. Android底部导航BottomNavigationBar的基
  6. android launcher使hotseat item显示标题
  7. Android 动态设置颜色
  8. Android Battery Dog开源项目介绍
  9. Android用属性动画拖动view到任意位置
  10. Android Studi3.1.4利用cmake搭建jni-Con