写在前面
准备材料
使用安卓模拟器获取到.wxapkg文件
- 夜神模拟器安装微信,设置中打开ROOT权限
- 登录微信,打开运行一次目标小程序
- 回到夜神模拟器桌面,将RE管理器拖进去安装
-
RE管理器将模式改变,只读→读写
- 进入目录
/data/data/com.tencent.mm/MicroMsg/{一串16进制字符}/appbrand/pkg/
-
这里有两个.wxapkg文件,不确定哪个是依赖哪个是源码,所以一起打压缩包传到电脑上。按住文件多选后压缩。生成的压缩包应该在其他文件夹中,具体目录在RE管理器设置中可以看到。
-
将生成的压缩包用微信收藏或发送给其他人,传到电脑上即可。
反编译
- 从Git上将脚本下载,通过网页直接下载,如果本地有git环境的可以直接使用命令行下载
$ git clone https://github.com/qwerty472123/wxappUnpacker.git
-
下载完成后进入脚本目录下安装依赖
- 最后一步是反编译.wxapkg文件 $ node wuWxapkg.js [-d] <files…>,如下
$ node .\wuWxapkg.js D:\_163200311_32.wxapkg
微信小程序的包和依赖包的后缀都是.wxapkg,真正的小程序包大小1M左右,而依赖包大小2、3M甚至更多。反编译.wxapkg依赖包会报错: Error: This Package is unrecognizable, please decrypted every type of file by hand.反编译错误的包返回结果
正确源码包的返回结果
反编译完成后,目标文件夹就是小程序源码了,打开小程序开发者可以运行。