iOS集成Flutter页面设置initialRoute时遇_FlutterDefaultDartEntrypoint未定义错误
解决Flutter iOS集成中
FlutterDefaultDartEntrypoint未定义报错 官方文档指出Flutter 1.22及以上版本,构建FlutterViewController时可通过FlutterEngine设置初始路由,给出的示例代码如下:
let flutterEngine = FlutterEngine() // FlutterDefaultDartEntrypoint 等价于 nil,会执行main() engine.run( withEntrypoint: FlutterDefaultDartEntrypoint, initialRoute: "/onboarding")
但按照上述代码编译时会出现报错:Undefined symbol: _FlutterDefaultDartEntrypoint
解决办法
- 直接用
nil替代FlutterDefaultDartEntrypoint,因为文档本身已经说明二者等价,修改后的代码:
let flutterEngine = FlutterEngine() engine.run(withEntrypoint: nil, initialRoute: "/onboarding")
- 检查Flutter依赖集成:确保iOS项目已执行
pod install,且Flutter SDK版本不低于1.22,同时Flutter项目的main.dart中存在默认的main()入口函数。 - 线程检查:如果是SwiftUI环境下集成,确保
FlutterEngine的初始化和run方法调用在主线程执行。
内容的提问来源于stack exchange,提问作者Jani
相关产品推荐
相关产品推荐

