本实战教程将一步步告诉你如何“反编译”获得其它小程序的源代码,包括“解包”和“源码还原”两篇,主要参考了看雪论坛、V2EX、GitHub 等网站上的帖子、教程、工具,在此不胜感激,参考链接详见文章底部,以及加上了我自己的一些理解和总结。 我们知道,在微信开发者工具中开发完小程序后,我们点击“上传”按钮,微信开发者工具会进行“编译”,对 JS 代码进行压缩混淆以及对 所以要“反编译”小程序,首先我们要获取到小程序对应的 之前在 V2EX 上有一篇 文章 介绍了如何通过某 URL 直接下载每个小程序的 因此,我们只能从手机端入手,在手机上找到微信客户端下载保存在本地的小程序包。 获取小程序的 .wxapkg 文件工具:一台已越狱的 iPhone 手机或者已 Root 的 Android 手机 本文以 iPhone 4S, iOS 8.4.1 为例,微信版本 v6.6.6。 在已越狱的 iPhone 上打开 找到“微信”的目录(我手机上对应的是:297286CE-9055-400A-99FA-D2D7C0735DCF 文件夹),点击进入,即为微信在此 iPhone 上的“沙盒”(Sandbox),相信 iOS 开发者对此目录已经非常熟悉了,该目录下主要有 我们发现搜索到的 经过简单分析我们发现,微信下载的小程序包存放在以下目录: /path/to/WeiChat SandBox/Library/WechatPrivate/{UserId}/WeApp/LocalCache/release/
其中, /var/mobile/Containers/Data/Application/297286CE-9055-400A-99FA-D2D7C0735DCF/Library/WechatPrivate/c15d9cced65acecd30d2d6522df2f973/WeApp/LocalCache/release/
该目录的内容如下图所示: 目录中有一系列以 另外,我们发现,在 iOS 上,微信也为每个小程序分配了一个 其路径为: /path/to/WeiChat SandBox/Library/WechatPrivate/{UserId}/WeApp/Sandbox/wx...(小程序 AppId)
By The Way,Android 手机上小程序包的存放目录为(需 Root 权限才能访问): /data/data/com.tencent.mm/MicroMsg/{UserId}/appbrand/pkg/
拷贝 .wxapkg 文件到电脑上通过上述分析,我们可以知道到小程序的压缩包 在 iPhone 上打开
接下来我们就可以通过
就可以把“知识小集”小程序的包 当然,如果你的电脑有安装 .wxapkg 解包上述费了很大周折我们终于拿到每个小程序的 图片取自文章 微信小程序源码阅读笔记 ,同时此文章的作者也提供了解包的脚本(各种语言的)放在了 GitHub 上: 我下载了 python unwxapkg.py 2.wxapkg
以“知识小集”小程序为例,解包后得到的文件目录如下(已经基本与我开发“知识小集”小程序的工程目录一致了): 每个小程序解包后的文件都大同小异,主要包含如下文件:
总结本文主要介绍了如何获取小程序的 |
微信小程序“反编译”实战(一):解包
最新推荐文章于 2024-07-26 10:32:15 发布