Robotium重签名小结

来源:互联网 发布:淘宝打折软件能打5折的 编辑:程序博客网 时间:2024/06/01 19:41
     学习Robotium测试框架已经一段时间了,有必要整理自己遇到的一些问题。
     参考网站:点击打开链接
     我的环境为集成adt的,会自动使用debug密钥为应用程序签名。查看debug.keystore:window->Preferences->Android->Build->Default debug keystore可以看到这个路径下的文件。
       重新签名的意思是在运行测试程序的时候和应用程序获得相同签名,安卓系统规定相同签名的程序才可以进行通信,所以可以说测试程序是寄生在应用程序上的。对待测应用重签名:1.google网站有个签名工具re-sign.jar,直接将apk拖入re-sign.jar中去除签名,然后重新签名,不太好用有时候会报错。但是使用这个工具确实可以获得mainActivity和Packagename,但是还有其他方法可以查看,我一会再讲。2.我使用命令行去签名。
     查看某个应用程序是否签名:jarsigner -verify -verbose -certs D:\auto\MyWorkSpace\hehe.apk
     1.去除原来签名信息:将apk后缀名改为.zip,然后从winrar中删除META-INF文件夹,删除后重新将文件名重新改成apk。
     2.将eclipse自带的debug.keystore拷贝到其他盘符,将apk也放在这个盘符下,然后命令行cd到这个盘符下。
     3.jdk6中签名方式:jarsigner -keystore debug.keystore -storepass android -keypass android unsign.apk androiddebugkey,jdk7略有区别:jarsigner -digestalg SHA1 -sigalg MD5withRSA -keystore debug.keystore -storepass android -keypass android unsign.apk androiddebugkey
     4.zipalign 4 unsign.apk sign.apk这样重新生成了签名的apk,zipalign能够使apk文件中未压缩的数据在4个字节边界上对齐(4个字节是一个性能很好的值,不过我还没有理解这句话的含义)。
     查看某个apk文件的mainActivity和Packagename:打开应用的同时,在命令行下敲 adb shell dumpsys activity top
0 0
原创粉丝点击