700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > apktoolkit apk反编译没有文件_重新编译mono——修改apk中Assembly-CSharp.dll并重新打包...

apktoolkit apk反编译没有文件_重新编译mono——修改apk中Assembly-CSharp.dll并重新打包...

时间:2022-06-21 17:33:05

相关推荐

apktoolkit apk反编译没有文件_重新编译mono——修改apk中Assembly-CSharp.dll并重新打包...

环境:

操作系统:Mac OSX10.12.6

mono版本:unity.1.3p4

NDK版本:android-ndk-r10e

一.指导步骤:

1.通过apktool工具反编译apk

2.修改反编译得到的dll文件,嵌入版本号

3.通过apktool工具重新打包apk

4.通过jarsigner工具重新签名新的apk

二.实现细节

0.所有的文件存储在xxx/reapk目录下

1.apktool工具获取:https://ibotpeaches.github.io/Apktool/install

2.右击wrapper script,链接存储为apktool。设置可执行状态

命令行设置:chmod 777 apktool

3.然后点击find newest here下载apktool.jar

4.反编译android_tmp.apk,生成的内容在android_tmp目录

cd xxxx/reapkecho Shall目录$0echo 执行目录$(pwd)echo $0 >> TestShell2.logapktool d android_tmp.apk

5.修改dll,并生成新的dll,覆盖旧的, version.txt存储当前版本号,每次生成新包时再Unity3d自动更新

cd xxx/reapkecho Shall目录$0echo 执行目录$(pwd)echo $0 >> TestShell2.logrm -rf Assembly-CSharp.dllcat version.txt | while read versiondo# echo "version:"$versionecho 版本号$versioncd xxx/reapkecho -n $version>Assembly-CSharp.dllcat android_tmp/assets/bin/Data/Managed/Assembly-CSharp.dll>>Assembly-CSharp.dllcp Assembly-CSharp.dll android_tmp/assets/bin/Data/Managed/Assembly-CSharp.dlldone

6.重新打包

cd xxx/reapkecho Shall目录$0echo 执行目录$(pwd)echo $0 >> TestShell3.logapktool b android_tmp

7.重新签名:

#!/bin/bashcd xxx/reapkecho Shall目录$0echo 执行目录$(pwd)echo $0 >> TestShell1.logjarsigner -verbose -keystore xxx/totem.jks -storepass store9527 -keypass key9527 -signedjar signed_apk.apk android_tmp/dist/android_tmp.apk com.packagename.lala -digestalg SHA1 -sigalg MD5withRSA

8.写一个一键生成脚本:

cd xxx/reapk./apk_unapk.sh./apk_changedll.sh./apk_reapk.sh./apk_sign.shrm -rf android_tmpexit 1

9.生成结果如下:

后记:本篇重点是重新修改dll、重新打包、重新签名,如果想实际使用需要结合《重新编译mono——Android动态更新dll》(/i6694897994073899531/)一起使用。

参考:/developer/article/1335295

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