背景:开始适配iOS26
Flutter:2.22
xcode 26.2
iOS 26
Flutter为内嵌模块
virtual_memory_posix.cc: 412: error: mprotect error: 13 (Permission denied)
flutter_boost 用 xcode26 debug 环境在 iOS26 上运行崩溃
github上有解释,可以参考一下:
https://github.com/flutter/flutter/issues/163984?utm_source=chatgpt.com
https://github.com/alibaba/flutter_boost/issues/2231
因为项目的一些原因,稳定为先,我采用的是debug也采用release构建模式
针对内嵌module接入的配置如下:
步骤 1:打开你的 OC 项目工程
双击打开你的 OC 项目主工程文件(比如YourOCProject.xcodeproj或YourOCProject.xcworkspace),而非 Flutter 模块里的文件。
步骤 2:为 OC 项目的 Target 添加 FLUTTER_BUILD_MODE
在 Xcode 左侧导航栏选中你的 OC 项目 Target(比如叫OCApp,即嵌入 Flutter 的那个 Target);
切换到Build Settings标签页 → 勾选右上角All + 取消Sort by Category;
滚动到最下方User-Defined分组 → 右键空白处选择Add User-Defined Setting;
新增配置项:
名称:FLUTTER_BUILD_MODE(大小写必须一致);
为不同编译列赋值:
Debug 列:debug(小写);
Release 列:release(小写);
Profile 列:profile(小写)。
步骤 3:切换 OC 项目的编译配置(控制 Flutter 模式)
点击 Xcode 顶部Product → Scheme → Edit Scheme(快捷键Command + <);
左侧选择Run → 右侧Info标签页 → 找到Build Configuration下拉框:
选Release → 运行时 Flutter 模块以 Release 模式编译;
选Profile → 以 Profile 模式编译;
选Debug → 恢复 Debug 模式;
点击Close保存,直接运行 OC 项目即可生效。
如图

亲测有效