apk反编译回编译

apk反编译回编译,第1张

再次记录一次apk反编译/回编译过程,链接失效请留言,会及时更新。

参考博客: https://blog.csdn.net/w327918069/article/details/82761437

首先,我们需要一个apk,下图是Android Studio编写并打包的一个apk。

其实apk就相当于一个zip压缩包,通过 WinRar 工具可以对其解压缩,像这样:

此时,祭出我们的神器---->apktool ,当当当当~~~~~~~。

一行命令进行apk反编译:

apktool d -r app-debug.apk 一定要加入参数 -r ,不然后面回编译回报错。

apk反编译到此结束。

回编译就是通过 apk反编译 生成的目录文件转换成一个apk。

十分简单的一行命令:

apktool b app-debug

此时安装apk到手机无法安装成功,还需要对apk进行签名才能安装。

1.生成key.keystore

keytool -genkey -alias key.keystore -keyalg RSA -validity 30000 -keystore key.keystore

可以看到key.keystore已经生成。

2.对apk进行签名

可用于没有签名和已经签名的apk,再次签名。

jarsigner -verbose -keystore [keystorePath] -signedjar [apkOut] [apkin] [alias]

命令格式及参数意义:

-verbose ->输出签名过程的详细信息

-keystore [keystorePath] ->密钥的库的位置

-signedjar [apkOut] ->签名后的输出文件名

[apkin] ->待签名的文件名

[alias] ->证书别名

jarsigner -verbose -keystore key.keystore -signedjar app-debug_signed.apk app-debug.apk key.keystore

回编译完成。

*** 作系统:Mac OS X

软件:apktool

进入官网 https://ibotpeaches.github.io/Apktool/ ,点击官网首页的install( https://ibotpeaches.github.io/Apktool/install/ )进入安装指南,里面有Windows,Linux和Mac的安装方法,不同的 *** 作系统按不同的步骤来就可以了。

终端输入: apktool d xxx.apk ,我在反编译时出现了以下错误:

看提示是无法写入到这个目录 /Users/xxx/Library/apktool/framework (xxx为电脑用户名),那就在 /Users/xxx/Library 下新建apktool文件夹,并在apktool文件夹下再新建个framework文件夹,然后为了保险起见设置新建文件夹到权限,在终端输入: chmod -R 777 /Users/xxx/Library/apktool

接着再重新执行反编译命令就可以成功了,在xxx.apk相同目录下会出现反编译后的文件夹。

在终端输入编译命令: apktool b xxx (xxx为刚才反编译的文件夹),成功后会在xxx文件夹下的dist文件夹下生成打包好后的apk文件

现在打包好后的apk是没有签名的,所以无法安装,现在给apk签名

20000为时间,这个设置长点就好了,-keystore后面是签名文件保存路径。输入命令按回车键会让输入密码等信息,按提示输入,不要忘了密码,签名时要用。

2.接着在终端输入:

-keystore后面的为签名文件的路径,-signedjar后面为签名好后apk的存放路径,在这个后面的一个为需要签名的pak的路径,最后的android.keystore为证书的别名,如果不知道别名,可以在终端输入: keytool -list -v -keystore /Users/xxx/Desktop/android.keystore 查看具体信息,里面有别名。

这一步还要注意,签名文件和需要签名的apk要在同一目录下。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/12046947.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-20
下一篇2023-05-20

发表评论

登录后才能评论

评论列表(0条)

    保存