ios - 如何解决 Flutter Xcode 构建中的“错误:链接器命令失败,退出代码为 1”?
问题描述
在我的Flutter 项目中,我进行了必要的更改以集成单信号推送通知。为此,我完全按照所描述的方式遵循了给定的文档-
https://documentation.onesignal.com/docs/flutter-sdk-setup
我已将部署目标设置为iOS 13.2
我的项目的启用位码选项已设置为 NO,OneSignalNotificationExtension 的启用位码选项已设置为 YES。
我Podfile
在 post_install 之前复制了以下代码-
target 'OneSignalNotificationServiceExtension' do pod 'OneSignal', '>= 2.9.3', '< 3.0' end
然后,我重新打开了我的工作区,并在运行 clean build 后显示以下错误-
Xcode 的输出:↳ === BUILD TARGET Pods-Runner OF PROJECT Pods WITH CONFIGURATION Release === ld: '/Users/project_directory/build/ios/Release-iphoneos/FMDB/libFMDB.a(FMDatabase.o)' 没有包含位码。您必须在启用位码的情况下重建它(Xcode 设置 ENABLE_BITCODE),从供应商处获取更新的库,或禁用此目标的位码。架构 arm64 clang 的文件“/Users/project_directory/build/ios/Release-iphoneos/FMDB/libFMDB.a”:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)
所以,我需要一个解决这个问题的方法来在我的 ios 设备中运行推送通知。
解决方案
在两个目标中设置Enable Bitcode
为。NO
我的意思是您的应用程序目标和通知服务扩展目标。并将通知服务扩展的部署目标设置为文档10.0
中建议的,它不会影响应用程序的部署目标。然后再次安装 pod 并检查!
推荐阅读
- visual-studio-code - 有没有办法配置 VSCode 将函数和常量重构到文件底部以外的任何地方?
- json - Flutter中从api获取数据时出错
- python - 如何对需要修改的输入使用 pytest 参数化?
- javascript - 如何使用 .findAll() 的响应?
- java - Spring boot 基于 ElementCollection 查询实体
- datatable - 如何向索环数据表添加分页
- amazon-web-services - 普通 SQS 需要 FIFO DLQ
- java - 连接多个表条件
- sql - 如果在列值中也存在,如何更改 char 数据类型大小
- discord - 您将如何使用 discord.js v.12 循环命令?