zoukankan      html  css  js  c++  java
  • 【转】利用apktool反编译apk,并且重新签名打包

    网站:https://ibotpeaches.github.io/Apktool,下载安装好apktool。

    我的安装在 C:UsersAdministratorDownloadsapktool反编译工具2.2.2。apk我放在c盘根目录,名字叫test.apk,cmd打开命令行。

    运行:apktool d -f c: est.apk

    当前目前便会生成一个test的目录,对应的包的文件目录。

    如要做啥修改,可以自行修改包的内容,有些加密了可能修改不了。改完了然后得重新编译成apk。

    运行:apktool b test
     
    (图示)

    查看test目录,里面多了一个dist目录,目录里面有个test.apk

    也可以运行:java -jar apktool.jar b -f test

    网上看有人会报错:
    F:apktool>apktool b Hello Hello.apk
    Exception in thread "main" brut.androlib.AndrolibException: brut.directory.PathN
    otExist: apktool.yml

    解决方法:进行反汇编时,改用命令apktool d -r xx.apk xx便可以解决(加上了-r选项)。

    但这种包并不能安装,需要签名才能安装。

    此处需要安装java环境,如未安装,请自行安装。我的安装在:G:Program Files (x86)Java

    依然cmd,g:,cd G:Program Files (x86)Javajdk1.7.0in

    之后输入命令:keytool -genkey -alias abc.keystore -keyalg RSA -validity 20000 -keystore abc.keystore

    您的名字与姓氏是什么?
      [Unknown]:  webyang
    您的组织单位名称是什么?
      [Unknown]:  webyang
    您的组织名称是什么?
      [Unknown]:  webyang
    您所在的城市或区域名称是什么?
      [Unknown]:  new york
    您所在的省/市/自治区名称是什么?
      [Unknown]:  new york
    该单位的双字母国家/地区代码是什么?
      [Unknown]:  cn
    CN=webyang, OU=webyang, O=webyang, L=new york, ST=new york, C=cn是否正确?
      [否]:  Y

    查看当前bin目录,生成了新文件:abc.keystore,把上面的test.apk放到这个bin目录,再次运行:

    jarsigner -verbose -keystore abc.keystore -signedjar testx.apk test.apk abc.keystore

    发现生成了testx.apk,此apk为最终安装版本。

    后来我安装出现了以下错误。

    INSTALL_FAILED_UPDATE_INCOMPATIBLE

    原因:就是你的安装包与之前设备上的安装包签名不一致。百度的时候,有的人说:运行太多次也会出现上述的问题,我就这样

    手机是安卓9的华为mate10.

    下面是原文,最好在测试机上进行,直接root就行。

    https://blog.csdn.net/u012150360/article/details/55223619

  • 相关阅读:
    TestNG超时测试
    iOS平台如何进行app自动化测试?
    软件性能测试见解与总结
    性能测试关注点整理总结
    测试用例的设计步骤
    如何建立软件测试管理体系?
    关于手工测试,应该如何做?
    web性能测试流程
    SPASVO推出ALM(覆盖全生命周期的研发过程管理平台)免费在线体验平台
    如何使用testcenter统计开发工程师工作质量?
  • 原文地址:https://www.cnblogs.com/c-x-a/p/10660681.html
Copyright © 2011-2022 走看看