Unity导出Xcode项目遇arm64架构符号未定义问题求助
解决Unity导出iOS项目后AppLovin符号链接错误的方案
问题根源
错误日志中缺失的_OBJC_CLASS_$_ALxxx、_OBJC_CLASS_$_MAxxx均属于AppLovin MAX SDK类,出现链接失败的核心原因是你删除了UnityFramework的Other Linker Flags中的$(inherited)——CocoaPods会通过这个参数自动导入依赖库的链接配置,删掉后AppLovin SDK的链接标志无法被加载,导致链接器找不到对应类的符号。
具体解决步骤
恢复
$(inherited)链接参数- 打开Xcode项目,选中
UnityFrameworktarget - 进入
Build Settings,搜索Other Linker Flags - 将之前删除的
$(inherited)重新添加到参数列表中
- 打开Xcode项目,选中
确认AppLovin依赖安装状态
- 检查项目根目录的
Podfile,确保包含AppLovin MAX的依赖配置(比如pod 'AppLovinSDK',具体需匹配Unity插件要求的版本) - 重新执行
pod install,确保所有依赖包完整下载并集成
- 检查项目根目录的
同步Target配置
- 确保
Unity-Iphone主target的Enable Bitcode也设为No(仅修改UnityFramework会导致配置不一致) - 检查两个target的
Architectures设置,确保均包含arm64;若存在VALID_ARCHS配置则直接删除,改用Excluded Architectures控制不需要的架构
- 确保
清理重建项目
- 执行Xcode菜单栏的
Product > Clean Build Folder - 关闭Xcode,删除项目目录下的
DerivedData文件夹 - 重新打开项目,选择对应设备或
Generic iOS Device执行构建
- 执行Xcode菜单栏的
额外注意
若问题仍存在,需确认Unity中AppLovin MAX插件的版本与Xcode Pod安装的版本完全匹配,版本不兼容也会导致符号不匹配问题。
内容的提问来源于stack exchange,提问作者Long Cao
相关产品推荐
相关产品推荐

