Flutter多Flavor iOS环境下配置OneSignal遇报错求助
解决Flutter多Flavor下iOS OneSignal扩展"No such module 'OneSignalExtension'"错误
针对你遇到的问题,可按以下步骤排查修复:
检查Podfile配置
默认情况下,OneSignal的Pod配置只会关联第一个创建的扩展目标。你需要在Podfile中为第二个扩展目标FlavorTwoOneSignalNotificationServiceExtension单独添加依赖声明:target 'FlavorTwoOneSignalNotificationServiceExtension' do use_frameworks! pod 'OneSignalExtension', '>= 3.0.0' end确保该配置块和主应用、第一个扩展的配置处于同一层级,保存后重新执行
pod install。验证扩展目标的Build Settings
打开Xcode,选中FlavorTwoOneSignalNotificationServiceExtension目标,进入Build Settings:- 确认
Framework Search Paths包含$(inherited)和${PODS_ROOT}/OneSignalExtension,路径配置需正确引用Pods目录 - 确保
Enable Modules (C and Objective-C)设置为YES - 检查
Other Linker Flags包含$(inherited),保证能正确链接依赖框架
- 确认
清理并重新构建
- 执行终端命令:
pod deintegrate彻底移除现有Pods配置,再执行pod install重新安装依赖 - 在Xcode中使用
Cmd+Shift+K清理Build Folder,关闭Xcode后重新打开项目并构建
- 执行终端命令:
检查代码与文件引用
- 确认
NotificationService.m中的导入语句为#import <OneSignalExtension/OneSignalExtension.h>,无拼写错误 - 进入扩展目标的
Compile Sources列表,确保NotificationService.m已被正确添加,不存在缺失或红标情况
- 确认
内容的提问来源于stack exchange,提问作者WatsMyName
相关产品推荐
相关产品推荐

