Xcode 15 Beta4与iOS17 Beta3中FirebaseMLVisionTextModel编译错误求助
解决Xcode 15 Beta 4 + iOS 17 Beta 3下FirebaseMLVisionTextModel编译错误问题
问题定位
你遇到的null objc class data for 'l67551'编译错误,本质是旧版Firebase ML Vision库与Xcode 15新编译链(尤其是arm64架构的处理逻辑)不兼容导致的——Xcode 15对Obj-C类的编译规则做了调整,而旧版库没有适配这些变更。
修复步骤
升级Firebase ML Vision依赖到最新版
Firebase官方已针对Xcode 15和iOS 17 Beta做了适配更新。如果用CocoaPods,修改Podfile后执行命令:pod update FirebaseMLVision FirebaseMLVisionTextModel确保依赖版本是当前最新稳定版。
调整项目架构配置
- 打开项目目标的
Build Settings - 将
Architectures设为Standard Architectures (arm64, x86_64),撤销之前的arm64排除操作 - 把
Build Active Architecture Only的Debug模式设为Yes,Release模式设为No
- 打开项目目标的
清理缓存后重建项目
- 按
Command + Shift + K清理项目 - 删除Derived Data:Xcode菜单进入
Settings→Locations,点击Derived Data路径旁的箭头,删除对应项目的缓存文件夹 - 重新执行
pod install,再编译项目
- 按
迁移至Firebase ML Kit新API(备选方案)
Firebase ML Vision已进入维护状态,官方推荐使用FirebaseMLKitTextRecognition新文本识别API,其对新版本系统兼容性更好:- 移除旧的
FirebaseMLVision和FirebaseMLVisionTextModel依赖 - 在Podfile中添加
FirebaseMLKitTextRecognition - 替换代码中的文本识别逻辑,比如将
VisionTextRecognizer替换为TextRecognizer相关类
- 移除旧的
验证
完成上述操作后重新编译项目,检查错误是否消失。如果问题仍存在,可以创建一个仅集成Firebase文本识别的测试项目,排除项目其他配置的干扰。
内容的提问来源于stack exchange,提问作者Vidya Srinivasa Kesarla
相关产品推荐
相关产品推荐

