dev和prod的Firebase存储

时间:2017-02-15 12:18:09

标签: android firebase build production-environment firebase-storage

如何在android中将我的firebase prod和dev存储与buildtypes或flavor分开?

我已经知道如何分离数据库,但这并不适用于存储 问题是实例化存储的代码并不依赖于google-services.json,而是依赖于固定网址:
FirebaseStorage.getInstance().getReferenceFromUrl("gs://dev-app.appspot.com");

2 个答案:

答案 0 :(得分:3)

  1. 在build.gradle(模块级别)中设置
  2.  buildTypes {
            debug {
                buildConfigField "String", "BASE_URL", '"gs://dev-app.appspot.com"'
            }
            release {
                buildConfigField "String", "BASE_URL", '"gs://prod-app.appspot.com"'
            }
    
    1. 在您的代码中使用

      FirebaseStorage.getInstance()getReferenceFromUrl(BuildConfig.BASE_URL);

答案 1 :(得分:1)

接受的答案并不是分离构建的最有效方法。我在this blog post on the Firebase Blog中编写了一套更全面的解决方案。更改默认存储桶就像在处理google-services.json时更改默认数据库URL一样 - 您不需要将桶URL的常量值烘焙到代码中。