如何在多个包 ID(同一项目)中使用 Firebase 远程配置 Android

How to use Firebase Remote Config in multiple package id (same project) Android

我在 Android studio 中使用 Flavor 在一台设备上部署不同的版本(演示版、生产版),但我也使用 firebase 远程配置,我将它注册到一个包 ID。 是否可以使 firebase 远程配置在多个包 ID 中工作?我想在我的演示和生产应用程序中使用它。

有关使用 multiple environments, such as development and production, is to have one project for each environment. Your app will typically have a unique application ID for each environment, which lets it read remote config parameters for the project that it will access, which is easy to configure with Android build variants 的建议文档。

这是我的回答

可以为以下条件设置远程配置

  • 仅适用于不同的项目:例如:亚马逊、flipkart
  • 相同项目但不同 productFlavors 例如:amazonPay、amazonShopping
  • 相同项目但 buildTypes 例如:amazon.dev、amazon.prod、amazon.experiment

这是设置 remoteConfig 的示例代码,它可能会有所帮助 you/others 确保在 Application.java 文件

onCreate 中设置 RemoteConfig
private void setupRemoteConfig() {
    final FirebaseRemoteConfig remoteConfig = FirebaseRemoteConfig.getInstance();
    remoteConfig.setDefaults(R.xml.remote_config_default);
    remoteConfig.fetch(300).addOnCompleteListener(task -> {
        if (task.isSuccessful()) {
            remoteConfig.activateFetched();
        }
    });
}

您可以为每个环境创建服务帐户并使用它,如果它是一个数据库,您可以为 ProductionDevelopment[= 创建两个单独的节点16=].

感谢阅读

您可以在项目设置下添加多个应用包名,这样它们都可以使用通用的firebase服务。这样,您就可以在多个应用程序之间共享单个项目资源。