Flutter App代码混淆

Flutter 应用混淆
Flutter 应用的混淆非常简单,只需要在构建 release 版应用时结合使用 --obfuscate 和 --split-debug-info 这两个参数即可。

flutter build apk --obfuscate --split-debug-info 命令需要指定输出调试文件的位置,该命令会生成一个符号映射表。目前支持 apk,appbundle,ios 和 ios-framework 等目标平台( macOS 和 aar 在 master 和 dev 分支中支持 )。

如下:

Dart 复制代码
flutter build apk --obfuscate --split-debug-info=./out/android/app.android-arm64.symbols

混淆成功后,需要保存符号映射表,以便以后需要去混淆跟踪代码堆栈。

相关命令的其他信息,可以运行 flutter build apk -h 查看,如果不支持该命令,核实 Flutter 版本,执行 flutter upgrade 更新。
读取混淆堆栈

要调试混淆后的应用,可以执行以下两个步骤:

  1. 找到符号映射表文件。如在 Android arm64 下发生 crash,可以分析 app.android-arm64.symbols 文件。

  2. 运行 flutter symbolize 命令,并指定堆栈跟踪的文件和符号映射表文件即可:

Dart 复制代码
flutter symbolize -i <stack trace file> -d ./out/android/app.android-arm64.symbols
相关推荐
喵个咪15 小时前
GoWind CMS 拆解:Flutter 设计系统内核——双态 token、四档断点与自适应壳层
前端·flutter·交互设计
恋猫de小郭20 小时前
Flutter 大小核优化又被回滚,然后又开新提案?
android·前端·flutter
好的佩奇1 天前
蓝牙之广播与扫描
android·flutter·蓝牙
wuxianda10301 天前
2026 苹果审核 4.3 (a) 被拒全解析|Guideline 4.3a spam 马甲包拒审原因 + 避坑方案
flutter·uni-app·苹果上架
恋猫de小郭2 天前
Flutter THLC 的 WebView 滚动终于从 70 FPS 提升到 120 FPS
android·前端·flutter
好的佩奇2 天前
Dart 之扩展类型
android·flutter·dart
恋猫de小郭3 天前
Flutter 下 AOT 一个你怎么都想不出来的 Bug ,JIT 正常的计算,在 AOT 居然算错了
android·前端·flutter
好的佩奇3 天前
Dart 之扩展方法
android·flutter·dart
好的佩奇4 天前
蓝牙之经典蓝牙
android·flutter·蓝牙