前言
看到人家上线的小程序的效果,纯靠推测,部分效果在绞尽脑汁后能做出大致的实现,但是有些细节,费劲全力都没能做出来。很想一窥源码?查看究竟?看看大厂的前端大神们是如何规避了小程序的各种奇葩的坑?那么赶紧来试试吧
反编译,其实还是简单的,要想拿到微信小程序源码,找到源文件在手机存放的位置就行,源文件拿到,用反编译脚本跑一下,微信小程序代码包里的所有文件、所有资源就出来了(除了project.config.json小程序配置文件)。拿到源码后,跑起来是能跑,但登录、授权等涉及到appid的功能是不能用的,因为被反编译小程序的服务端appid和你本地添加的不一样,这就是为啥拉下来的源码没有project.config.json文件的原因,项目中appid是配置在这个文件里,这里一定程度上保护原小程序。
一【获取小程序包】
分步骤a:
安装mumu模拟器1
地址:mumu模拟器
分步骤b:
安装好mumu模拟器,开启模拟器vt[虚拟化]模式(避免模拟器卡顿--你要觉得不卡可以跳过此步)1
方法百度地址在BIOS中开启VT虚拟化以提高安卓模拟器的性能?
分步骤c:
模拟器中安装【微信】【RS文件管理】
分步骤d:
模拟器登录微信,正常使用你想反编译的小程序
分步骤e:
打开RS模拟器-复制文件到电脑
文件目录位置直接给出:
/data/data/com.tencent.mm/MicroMsg/{{一串32位的16进制字符串文件夹}}/appbrand/pkg/
在这个目录下,会发现一些 xxxxxxx.wxapkg 类型的文件,这些就是微信小程序的包
然后长按选中,复制
回到首页 0文件夹-![88540f1baf1d7d74185ab80b5ad5f6be.png](https://i-blog.csdnimg.cn/blog_migrate/68afe9d585aa5b7c26ac6467a802d433.png)
打开mumu(电脑共享文件夹)![5156d218cee72b29677b7ccfae8eb8fe.png](https://i-blog.csdnimg.cn/blog_migrate/0ae830537dfb40c1626fba46b122acf7.png)
黏贴![2140a8f25d7a9b252056b54501af9f47.png](https://i-blog.csdnimg.cn/blog_migrate/d0d8ce851a83bccac3e2b7f0480810fd.png)
点击模拟器的共享文件夹![4aef908f512bda651b1f928ae81e4736.png](https://i-blog.csdnimg.cn/blog_migrate/abb046a669c3b300a498d0a12f1990d6.png)
就从模拟器取出来了![11ca558d32211cebacfdb6fb859f948f.png](https://i-blog.csdnimg.cn/blog_migrate/5698d813409e0a001e2ce00eaea55a72.png)
####### ps–获取需要反编译的文件已经完成
步骤二 反编译程序准备
分步骤a:node.js运行环境
如果没有安装nodejs,请先安装一下
下载地址:nodejs下载
#####点击下载安装一路next就可以
分步骤b-下载脚本
脚本获取
获取反编译脚本
分步骤c-将下载好的脚本解压放入node.js的安装目录
分步骤d-安装反编译依赖
打开nodejs命令窗口
cd 到你clone或者下载好的反编译脚本目录下
在node命令窗口中依次安装如下依赖:
npm install esprima
npm install css-tree
npm install cssbeautify
npm install vm2
npm install uglify-es
npm install escodegen //新加的12345678910111213141516
安装好依赖之后,就是最后一步了,
反编译 .wxapkg 文件
在当前目录下输入
你存放小程序文件盘符【d】```
d:
1
d盘的Develop夹
cd Develop1
d盘的Develop夹的wxappUnpacker-master
cd wxappUnpacker-master1
然后输入一下代码node .\wuWxapkg.js xx.wxapkg
node .\wuWxapkg.js D:\_-563524085_2.wxapkg
### 分步骤c-完成后会在源文件生成一个与小程序包一样名称文件夹
打开微信开发者导入就OK了
有任何疑问可以添加以下微信: