重签名

前言:当我们做自动化测试时候,特别是黑盒测试,因为apk是开发编写的,apk的签名和我们测试程序的签名不一致,当我们使用robotium测试框架测试,会出现测试失败。故而我们必须对待测apk进行重签名

一、删除待测apk签名文件

1.将待测apk后缀名字改为zip,如:Android spk重签名talkback_leelen.apk,改为Android spk重签名talkback_leelen.zip

2.删除掉签名文件META-INF,具体步骤:选择talkback-leelen.zip,后,使用WinRAR打开(其他解压工具打开也一样),然后选择根目录下的META-INF文件夹,删除掉整个文件夹(我看到有些网友是删掉META-INF文件夹里除MANIFEST.MF以外的东西,我试过,但出了点问题,所以建议你们还是和我一样删除整个文件夹,简单利落)

Android spk重签名

3,将无签名的待测apk后缀改回.apk

二、将自己eclipse的签名文件和无签名的待测apk放在同一目录下

1.查找自己eclipse签名文件,详细步骤:1.打开eclipse-Windows-preferences,在preferences界面选择Android-build后看到default debug keystore(默认调试**存储库),其对应的文本框中就是签名文件及路径,如下图,我的路径是:D:\adt-bundle-windows-x86-20140702\adt-bundle-windows-x86-20140702\sdk\.android,而签名文件就是debug.keystore

Android spk重签名

2.复制eclipse的签名文件到相应的目录或文件夹下,必须和待测的apk(无签名),放在一起,如放在D:/test 目录下

三、输入重签名命令,进行重签名(重要)

1.进入到D:/test,在上方导航输入框输入cmd后回车,进入到cmd命令界面,如下图:

Android spk重签名

2.在cmd命令界面输入重签名命令,jarsigner -verbose -keystore debug.keystore(签名文件,可按需替换) -storepass android -signedjar leelen_singer.apk(签名后的apk名,可修改) -digestalg SHA1 -sigalg MD5withRSA talkback_leelen.apk androiddebugkey 后回车,

Android spk重签名

系统自动执行,

Android spk重签名

签名成功后,在D:/test就能看的新生成的重签名包

Android spk重签名

命令详解:jarsigner  是Java的签名工具 ; verbose 显示详细信息

                keystore 签名文件 ;storepass android表示Android指定密码库密码

                   signedjar 指定签名后的apk 名; -digestalg SHA1 -sigalg MD5withRSA 算法和签名算法的相关参数

          androiddebugkey 秘钥





相关文章:

  • 2022-12-23
  • 2021-05-07
  • 2021-12-29
  • 2022-12-23
  • 2022-12-23
  • 2021-04-24
  • 2021-11-17
猜你喜欢
  • 2022-12-23
  • 2021-11-23
  • 2021-10-30
  • 2022-12-23
  • 2021-06-20
  • 2021-11-19
  • 2022-01-04
相关资源
相似解决方案