You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter 2迁移空安全后iOS构建报arm64架构Undefined symbols错误

Flutter 2空安全迁移后iOS端arm64架构链接报错问题

问题触发场景

迁移至支持空安全的Flutter 2版本后,iOS端构建流程出现异常,执行指定清理重装依赖的运行命令时触发编译报错:

flutter clean; rm ios/Podfile.lock pubspec.lock; rm -rf ios/Pods ios/Runner.xcworkspace; flutter run --flavor dev -t lib/main_dev.dart

核心编译报错内容

Undefined symbols for architecture arm64:
  "_OBJC_CLASS_$_FlutterStandardTypedData", referenced from:
      objc-class-ref in google_maps_flutter(GoogleMapController.o)
  "_OBJC_CLASS_$_FlutterStandardMessageCodec", referenced from:
      objc-class-ref in google_maps_flutter(GoogleMapController.o)
  "_OBJC_CLASS_$_FlutterError", referenced from:
      objc-class-ref in firebase_core(FLTFirebasePlugin.o)
      objc-class-ref in google_maps_flutter(FLTGoogleMapsPlugin.o)
      objc-class-ref in google_maps_flutter(FLTGoogleMapTileOverlayController.o)
      objc-class-ref in google_maps_flutter(GoogleMapMarkerController.o)
      objc-class-ref in google_maps_flutter(GoogleMapController.o)
      objc-class-ref in onesignal_flutter(OSFlutterCategories.o)
  "_OBJC_CLASS_$_FlutterMethodChannel", referenced from:
      objc-class-ref in firebase_core(FLTFirebaseCorePlugin.o)
      objc-class-ref in firebase_crashlytics(FLTFirebaseCrashlyticsPlugin.o)
      objc-class-ref in google_maps_flutter(GoogleMapController.o)
      objc-class-ref in onesignal_flutter(OSFlutterOutcomeEventsController.o)
      objc-class-ref in onesignal_flutter(OneSignalPlugin.o)
      objc-class-ref in onesignal_flutter(OSFlutterTagsController.o)
      objc-class-ref in onesignal_flutter(OSFlutterInAppMessagesController.o)
      ...
  "_FlutterMethodNotImplemented", referenced from:
      -[FLTFirebaseCorePlugin handleMethodCall:result:] in firebase_core(FLTFirebaseCorePlugin.o)
      -[FLTFirebaseCrashlyticsPlugin handleMethodCall:result:] in firebase_crashlytics(FLTFirebaseCrashlyticsPlugin.o)
      ___61-[FLTTileProviderController requestTileForX:y:zoom:receiver:]_block_invoke in google_maps_flutter(FLTGoogleMapTileOverlayController.o)
      -[FLTGoogleMapController onMethodCall:result:] in google_maps_flutter(GoogleMapController.o)
      -[OSFlutterOutcomeEventsController handleMethodCall:result:] in onesignal_flutter(OSFlutterOutcomeEventsController.o)
      -[OneSignalPlugin handleMethodCall:result:] in onesignal_flutter(OneSignalPlugin.o)
      -[OSFlutterTagsController handleMethodCall:result:] in onesignal_flutter(OSFlutterTagsController.o)
      ...
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

已尝试的无效排查操作

  • 执行pod deintegrate && rm Podfile.lock && pod install --repo-update 全量重装iOS端依赖
  • 在Podfile中配置platform :ios, '12.0' 对齐最低系统版本要求
  • 在Xcode Build Settings中手动将目标编译架构设置为arm64

注:该报错可在两个独立Flutter项目中稳定复现,以上常规排查操作均无法解决问题。

问题关联线索

  • 报错特征指向OneSignal Flutter插件的兼容性问题
  • 已有匹配该报错场景的公开issue记录
  • 已搭建可稳定复现问题的最小Demo项目用于问题定位

内容的提问来源于stack exchange,提问作者andreich

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.22 14:45:01