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

MAUI项目构建报错:arm64架构下NativeLibraryInterop符号未定义

解决MAUI主项目构建时NativeLibraryInterop Firebase相关的Undefined Symbols错误

针对你遇到的iOS arm64架构下OBJC_CLASS$_MauiFIRApp未定义符号错误,可按以下步骤排查解决:

1. 确认NativeLibraryInterop项目的输出被主项目正确引用

  • 检查主项目的项目引用,确保已添加NativeLibraryInterop项目的引用,且设置为复制本地(在引用属性里确认Copy Local为True)。
  • 对于iOS平台,确保NativeLibraryInterop项目生成的.a静态库或.framework框架被正确包含在主项目的iOS资源中。

2. 验证Firebase依赖库的链接配置

  • 在MAUI主项目的iOS平台配置(Platforms/iOS/Info.plist或项目属性的iOS构建选项)中,确认已添加Firebase所需的系统框架和库,比如FirebaseCore.framework等(根据你使用的Firebase模块调整)。
  • 在主项目的Platforms/iOS/CustomLinkerFlags中添加必要的链接标记,比如-ObjC(强制链接Objective-C类和分类,避免符号被优化掉),具体可在项目属性的iOS构建 -> 额外链接器参数中添加:
    -ObjC
    

3. 检查NativeLibraryInterop的绑定代码

  • 确认MauiFIRApp类的绑定定义正确,类名、方法签名与实际Firebase SDK的类完全匹配,无拼写错误。
  • 确保绑定项目中已正确导入Firebase的头文件,比如在.h文件中添加:
    #import <FirebaseCore/FirebaseCore.h>
    

4. 清理并重新构建

  • 清理整个解决方案:右键解决方案 -> 清理。
  • 删除MAUI项目的bin和obj目录,以及NativeLibraryInterop项目的输出目录。
  • 先重新构建NativeLibraryInterop项目,再构建主项目。

5. 确认iOS架构设置一致

  • 确保NativeLibraryInterop项目和主项目的iOS架构设置相同,都包含arm64(在项目属性的iOS构建 -> 架构中选择ARM64或Universal)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 19:22:03