【发布时间】:2021-12-01 03:24:32
【问题描述】:
我尝试根据用户语言偏好来初始化 Firebase。 例如:
用户打开一个应用程序。 选择语言 A:Flutter 应该初始化项目 A(配置等)。 当用户选择不同的语言时也是如此。
问题是 iOS 需要有默认的 GoogleService-Info.plist 文件。 在 Firebase 的动态初始化期间,创建了一个应用程序,但默认应用程序来自默认文件,并且优先于项目 A。最终,创建了两个应用程序(DEFAULT 和 A)。这会导致根据用户偏好将 FirebaseMessaging 分配给默认 Firebase 应用,而不是第二个。
根据 messaging.dart 文档:
/// If [app] is not provided, the default Firebase app will be used.
// TODO: messaging does not yet support multiple Firebase Apps. Default app only.
在这种情况下,不可能支持 Firebase 配置文件的动态初始化,因为总会有一个从默认配置文件启动的默认应用。
在本机应用程序中,我可以创建许多 .plist 文件并调用 FirebaseApp.configure(options: options)
你知道如何在 Flutter 中解决这个问题吗?
【问题讨论】:
标签: android ios firebase flutter