常见问题
基础
需要 Root 或 Xposed 吗?
不需要。所有能力都内置在 App 里,不修改系统分区,也不依赖任何框架环境。
普通使用与调试都不需要 root。
手机上必须装微信吗?
不需要。WeAppDev 自带 WMPF 运行时,登录只是借微信扫一次码来获得一个本地会话。不装微信也能打开小程序。
为什么不用 Xposed?
Xposed 依赖微信版本与类名,微信一升级就废,还需要框架环境。WeAppDev 的产物是一个普通 App,安装即用。
支持哪些 Android 版本?
最低 Android 7.0,arm64。手机、平板、车机都可以安装,具体取决于设备能否安装第三方 APK。
会和官方微信冲突吗?
不会。包名不同,数据目录独立,可以共存。
支持小游戏吗?
支持。跳一跳这类小游戏可以直接在 WeAppDev 里启动,和普通小程序共用运行时;DevTools、Network、Native 同样可用。小游戏是 canvas,页面级 DOM 插件意义有限。
调试
一定要用 adb 吗?
不一定。网关默认绑 0.0.0.0:9400,手机和电脑同网段时直接访问 http://<手机IP>:9400 即可。adb forward 只是最省事、不受网络策略影响的方式。
为什么 Console 里没有 wx?
当前上下文不是业务上下文。在 Console 顶部的上下文下拉里切换到 WxaCtx-*,或在 Sources 里打开业务脚本再试。
断点为什么下不去 / 不命中?
业务包是压缩后的单行文件,断点需要行 + 列。Chrome 会自动处理;如果仍不命中,确认断点落在会执行的代码上,并检查是否有残留的暂停状态。
为什么不能带 awaitPromise?
这个 v8_inspector 构建里,遇到 Promise 值会走 v8::Function::New,直接 SIGSEGV。需要异步结果时,先发起,再轮询或订阅事件。
内置 WebUI 什么时候有?
正在逐步开发中,当前版本请使用 Chrome DevTools。
换小程序后 target 消失了?
关闭小程序后 isolate 被销毁,appservice 会从 /json/list 摘掉,避免空壳 target。重新打开会自动恢复。
网络
为什么 Network 面板一条都没有?
先确认捕获开关开启,再确认小程序确实发起了请求。小程序发请求走 native Cronet,网页层的注入拦不到,WeAppDev 是在 native 边界捕获的。
能抓系统流量或别的 App 吗?
不能。捕获点在当前小程序的 WMPF 运行时内部。
需要装证书或配代理吗?
不需要。捕获发生在进程内部,不改系统代理。
改包规则会影响别的插件吗?
不会。规则按 owner 隔离,rules() 只能看到自己的。卸载插件时宿主会清掉它的全部规则。
插件
插件为什么关了调试就失效?
插件的逻辑层与渲染层注入都依赖 CDP。关闭调试后宿主零注入:面板仍可打开,但 logic / storage / network 不运行。这是有意的边界。
为什么面板每次打开都恢复默认状态?
面板每次都是新的 iframe,内存变量不会保留。需要持久化的状态放 wad.storage。
为什么 wad.storage.get 拿到的不是值?
它是异步的,返回 Promise。用 .then 或 await。
插件能发网络请求吗?
可以。面板侧由宿主代理,无 CORS;逻辑层走 wx.request。不要在面板里直接 fetch() 第三方域名。
一个插件最多多大?
单文件 HTML ≤ 2 MB;逻辑层 / 渲染层脚本各 ≤ 256 KB;同时启用插件 ≤ 120 个。
车机
车机能用吗?
能。车机只要能安装第三方 APK,就可以装 WeAppDev;车机默认横屏,大屏会自动放大。部分小程序自身是竖屏布局,横屏下会居中显示。详见 车机与大屏。
车机需要登录微信吗?
不需要在车机上登录微信。用手机微信扫一次码,把会话保存在车机本地即可。
Network 脚本
脚本和插件是什么关系?
没有关系。Network 页的脚本与重写是独立工具,不装插件也能用;插件里的 wad.net.addRule 创建的是归属该插件的重写规则。
合规
项目开源吗?
不开放源码。WeAppDev 免费提供 APK,源码不分发。
可以商用吗?
不可以。项目基于腾讯官方 WMPF 运行时。仅供个人学习与研究使用,请勿商用、请勿大规模分发。
会收集我的数据吗?
App 不上传小程序业务数据。插件可能读写当前小程序的本地数据,安装第三方插件前请确认来源可信。
为什么有时需要重新扫码?
会话有效期约 24 小时。过期后需要重新扫码,这是账号体系的限制。
还有问题?
- 微信:
RSCompanyCEO - 版本记录:版本与更新