如何解决react native - 仅以一种方式有条件地添加节点模块react-native-firebase
我正在尝试将 HMS 与基于 GMS 的 React Native 应用程序分开。
到目前为止,我已经创建了两种风格(名为 huawei
和 google
),这让我有机会像这样应用各自的插件
if (getGradle().getStartParameter().getTaskRequests().toString().contains("Huawei")) {
apply plugin: 'com.huawei.agconnect'
} else {
apply plugin: 'com.google.gms.google-services'
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
}
一切似乎在 build.gradle
中都是有条件的。但是,当我添加 react-native-firebase
并运行华为变体时,它导致我出现以下错误:
未创建 Firebase 应用“[DEFAULT]” - 调用 firebase.initializeApp(),js 引擎:hermes
根据this issue,可以防止将apply plugin: 'com.google.gms.google-services'
添加到build.gradle
的底部,但这正是我想要避免的。
所以,我的问题很简单:我怎样才能有条件地将 Android Firebase SDK 添加到一个风格中,而根本不在另一个风格中使用它?或者..我的方法完全错误吗?
解决方法
我认为在 JS 端处理这个是这里唯一的选择,因为官方 React Native Firebase 文档指出必须安装 Google Play 服务才能正常运行。 https://v5.rnfirebase.io/docs/v3.1.x/faqs#:\~:text=The%20firebase%20SDK%20requires%20a,the%20Play%20Services%20SDK%20installed。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。