APK签名用处主要有两种:
1. 使用特殊的key签名可以获取到一些不同的权限。
2. APK如果使用一个key签名,发布时另一个key签名的文件将无法安装或覆盖老的版本,这样可以防止你已安装的应用被恶意的第三方覆盖或替换掉,这个很有用哦。
目前Google在Android系统方面的态度和策略也都是非盈利性质的,和Symbian的签名有本质的区别,而我们使用Eclipse+ADT插件从开发环境安装到手机中的APK文件已经包含了ADT插件的Debug签名文件,所以没有安装,但是最终发行的版本需要自己的key去签名。
(1)必备工具:Sun官方网站下载JDK,安装后产生的keytool和jarsigne两个系统工具。
http://java.com/zh_CN/download/installed.jsp
安装后到(2)
而对于两个工具和keystore的介绍请看:jdk工具keytool和jarsigner帮助Part1(jdk keytool&jarsigner tool manual) 和 jdk工具keytool和jarsigner帮助Part2(jdk keytool&jarsigner tool manual)
(2)生成keystore
cmd下:
进入到jdk的bin目录,这样的话,android.keystore文件就会生成在这个目录下,签名的时候我们需要这个文件
C:Program FilesJavajdk1.6.0_10in>keytool -genkey -v -keystore superman.keystore -alias superkey -keyalg RSA -validity 20000
(3)使用你生成的keystore对apk包签名
cmd进入 superman.keystore XXX.apk的文件夹中
$jarsigner -verbose -keystore superman.keystore XXX.apk superkey
输入密钥库的口令短语:
正在添加: META-INF/TEKKAMAN.SF
正在添加: META-INF/TEKKAMAN.RSA
正在签名: ............
下次介绍如何生成自己的加密文件,并使用这些文件对updata.zip刷机包签名!
来源:https://www.cnblogs.com/superchao8/archive/2011/03/05/1971637.html