README.md
1.09 KB
Wow English
- flutter版本号:3.19.2
Android 使用 Whistle 抓包
为了让 Dio 的 HTTPS 请求能够经过 Whistle 解密,Android Debug 包默认允许任意服务器证书,不需要在项目中内置或指定 Whistle Root CA。普通 Release 包仍使用系统默认的严格证书校验。
构建方式
Debug 包默认允许 Whistle 抓包:
flutter build apk --debug
构建允许 Whistle 抓包的 Release 包:
flutter build apk --release --dart-define=ENABLE_WHISTLE_CA=true
构建正常生产 Release 包(不允许 Whistle 抓包):
flutter build apk --release
手机通过 Clash Meta 将流量转发到运行 Whistle 的电脑后,即可抓取 Dio 发出的 HTTPS 请求。因为抓包构建不绑定具体 CA,所以更换 Whistle 实例或重新生成 Root CA 后无需修改代码和重新导入证书。
Debug 包以及带
ENABLE_WHISTLE_CA=true的 Release 包会接受任意 HTTPS 证书,无法抵御中间人攻击。此类 APK 只应在内部测试设备和测试人员之间分发,不能作为正式生产包发布。