1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > linux反编译apk apk反编译和重新打包

linux反编译apk apk反编译和重新打包

时间:2020-11-12 00:55:33

相关推荐

linux反编译apk apk反编译和重新打包

操作系统:Mac OS X

软件:apktool

安装apktool

95264490-A493-4D02-B820-C23AB5140B5D.png

按Mac步骤:

1.打开“wrapper script”,把页面中的内容全部复制,并保存,文件名为“apktool”。

2.点击find newest here进入下载页,下载最新的apktool

3.把下载后的文件从命名为apktool.jar。

4.把apktool.jar和apktool两个文件复制到/usr/local/bin路径下。

5.设置/usr/local/bin/路径下的apktool.jar和apktool两个文件的权限。(具体操作在终端中输入chmod +x apktool.jar 和chmod +x apktool)

这样apktool就安装好了。

反编译apk

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

WARNING: Could not write to (/Users/xxx/Library/apktool/framework), using /var/folders/wr/svbl4qg12kq75hghq7nr4lch0000gn/T/ instead...

S: Please be aware this is a volatile directory and frameworks could go missing, please utilize --frame-path if the default storage directory is unavailable

看提示是无法写入到这个目录/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是没有签名的,所以无法安装,现在给apk签名

在终端输入:

keytool -genkey -alias android.keystore -keyalg RSA -validity 20000 -keystore /Users/xxx/Desktop/android.keystore

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

2.接着在终端输入:

jarsigner -verbose -keystore /Users/xxx/Desktop/android.keystore -signedjar /Users/guyuechao/Desktop/signed.apk /Users/xxx/Desktop/unsigned.apk android.keystore

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

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

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。