什么时候需要这样做?
遇到真机问题,如资源丢失检查,可能需要直接拆开对应的包来确认资源是否存在,打包是否没打进去。例如检查某个tdr表格是否没有打进包里面,或者检查包里某个资源版本是不是不对
看到其他做的很好的游戏,看到很好的图或者模型,想破解里面的资源拿来自己用,如果没加密的话就可以破解出来(如轩辕传奇的apk就没加密,从里面能搞出很多好看的图片和模型)
想学习研究别人的游戏是怎样处理资源的,shader怎么实现的等
需要用到的工具:
- apktool 反编译apk用
- unity studio 反编译unity资源用
流程
1 把apk包和apktool统一放到一个文件夹,在文件夹内按住Shift点击鼠标右键,选择在此处打开cmd窗口,之后输入命令 java -jar apktool_2.2.1.jar d (xxx.apk)
2 等命令执行之后会在目录内生成一个和apk包名相同的文件夹
3 进入文件夹,选择assets目录,如图
4 打开Unity Studio,点击菜单,选择Load Folder,将assets目录的路径打开,会显示如下结果
右边Asset List可以看到包里的任何资源,包括Shader,Texture,Mesh,TextAsset等
5 点击菜单,选择Extract Bundle,就可以解开选择的ab包,如图
就可以看到包里面的所有表格文件