美文网首页
android 反编译后再次打包流程

android 反编译后再次打包流程

作者: Lee_5566 | 来源:发表于2020-12-29 10:54 被阅读0次
    image.png

    准备工作

    主要使用工具:
    apktool、

    反编译流程:

    1. 使用apktool解包
    2. 修改代码
    3. 使用apktool重新打包
    4. 添加签名

    使用apktool解包

    使用命令如下:
    apktool d -f [待反编译的apk] -o [反编译之后存放文件夹]
    例如:

    apktool d  xxx.apk 
    
    image.png

    反编译得到的文件夹内容如下:


    image.png

    其中smali文件夹下就是代码编译后生成的smail文件。

    修改代码

    修改代码也是修改smail文件。

    修改smail的时候要先阅读下源码,这个时候要用到反编译。、
    反编译参考文章APK逆向工程

    image.png

    通过GUI界面,查看到源码后,找到对应的smail文件,对应的代码位置进行修改即可。

    使用apktool重新打包

    重新打包最主要使用的工具还是apktool.
    执行命令:

    apktool b -f ./test/  -o test.apk
    

    打包完后当前目录下会多出两个文件夹:


    image.png

    dist文件内就是我们需要的apk。

    添加签名

    如果没有签名,安装时候就会报错:
    Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES]。

    这里主要是生成自己的签名文件。

    可以使用 Android Studio可视化操作界面生成一个新的签名文件,也可以直接使用 keytool 工具直接在终端工具上生成,使用时候需要先找到keytool 工具的安装路径,一般是在C:\Users\Admin\AppData\Local\Android\Sdk\build-tools\30.0.3下.

    使用命令如下:

     keytool -genkey -alias abc123.keystore   -keyalg RSA -validity 40000 -keystore abc123.keystore
    

    生成abc123.keystore 签名文件。一般需要输入秘钥,秘钥我这里直接输入123456

    然后就可以使用签名文件进行签名了:

     jarsigner -verbose -keystore abc123.keystore -signedjar hello_sign123.apk hello_test.apk abc123.keystore
    

    这样就签名完成了,安装hello_sign123.apk就可以使用了。

    相关文章

      网友评论

          本文标题:android 反编译后再次打包流程

          本文链接:https://www.haomeiwen.com/subject/yegbnktx.html