我正在使用 Flutter 风格来管理多个应用程序的相同代码库。到目前为止,味道还不错。但是,我有 为 iOS 的每种风格设置 OneSignal 很困难。 假设我有风味 1 和风味 2。
我遵循了 OneSignal 的文档 https://documentation.onesignal.com/docs/flutter-sdk-setup 。它确实适用于主要风味(即风味1),但不适用于其他风味 味道(味道2)。
我尝试过的。
对于风味1。
到目前为止,这适用于flavor1。
但是为了味道2。
当我从 Xcode 运行应用程序时。我在 FlavorTwoOneSignalNotificationServiceExtension 下收到错误“没有这样的模块‘OneSignalExtension’”。
有人可以指出我在这里做错了什么吗?
谢谢
假设您有 3 种不同的口味。具体如下:
com.company.mobile --> 产品
com.company.mobile.dev --> dev
com.company.mobile.uat --> uat
应用程序的产品包标识符配置应如下。
然后,应通过 onesignal 仪表板为项目创建 3 个不同的应用程序,如下所示。由于您的项目安装了一个风味,因此每个风味应使用不同的信号键。
最后,在 Xcode--Targets 部分中,您应该转到之前创建的 OneSignalNotificationServiceExtension 目标,并从构建设置选项卡创建名为 BUNDLE_ID 的用户定义值。然后,您应该在与
$(BUNDLE_ID).OneSignalNotificationServiceExtension
相同的选项卡中的“产品包标识符”字段中输入该值。下面给出一个例子:
最后你可以像这样使用它:
try {
var token = FlavorConfigurationsKeys.oneSignalAppToken;
OneSignal.initialize(token);
} catch (e) {
...
}