android apk的重新签名?
http://zhengjunwei2007.blog.163.com/blog/static/35297942201222741713492/
?
用到的工具:
adb.exe install
?
?
?
?
?
?
?
?
?
?
java -jar signapk.jar platform.x509.pem platform.pk8 MyDemo.apk MyDemo_signed.apk 得到具有对应权限的APK
查看是否签名过:
?
?
优化APK:
zipalign -v 4 MyDemo_signed.apk MyDemo_new.apk
查循APK是否优化过:
zipalign -c -v 4 MyDemo.apk
?
?
?
?
?
什么是pre-installapk:
就是Android系统预装的一些应用,例如Messaging、Contacts、Calendar等等。
pre-install apk的签名方式:
给apk签名的一般方法有两种,一种是在Eclipse里使用“Android Tools -> Export SignedApplication Package…”这种方式签名;另一种是用命令行签名。这里就不详细描述了。
而pre-install apk的签名比较特殊,使用源码中的默认签名。可以查看Android的源代码得知。
$ signapkpublickey.x509[.pem] privatekey.pk8 input.jar output.jar
其中,*.x509.pem为x509格式公钥,pk8为私钥。
?
设计思路是这样的:首先apk其实就是一个压缩包,我们可以将其用rar解压出来,那么我们都数据怎样放入apk呢?其实只要把数据(电子书文件)放到安卓的assets目录即可,android端只要读取assets中的文件显示出来即可。但是如果只是修改assets,会发现当再次打包成apk时,程序不能运行。这是因为apk一旦修改就必须要更新数字签名才可以使用。可以到网上下载SignAPK.jar的jar包,实现了android的动态签名技术。
?
?
?