Android 带有awsconfiguration.json的源集

Android 带有awsconfiguration.json的源集,android,amazon-web-services,android-gradle-plugin,aws-amplify,source-sets,Android,Amazon Web Services,Android Gradle Plugin,Aws Amplify,Source Sets,我使用的是AWS Amplify,有两个环境可以切换,因此我有两个awsconfiguration.json文件,但需要一种在运行时在这两个环境之间切换的方法。我听说您可以使用源集,但不知道如何使用。我尝试了以下方法,但没有成功。我认为我必须设置productFlavor和/或buildType sourceSets { prod { res.srcDirs = ['res-prod'] } dev { res.srcDirs = ['r

我使用的是AWS Amplify,有两个环境可以切换,因此我有两个
awsconfiguration.json
文件,但需要一种在运行时在这两个环境之间切换的方法。我听说您可以使用源集,但不知道如何使用。我尝试了以下方法,但没有成功。我认为我必须设置
productFlavor
和/或
buildType

sourceSets {
    prod {
        res.srcDirs = ['res-prod']
    }

    dev {
        res.srcDirs = ['res-dev']
    }
}

将您的
awsconfiguration.json
放在每个产品风格的
资产
目录下,请参见如下所示的目录结构:

有关如何配置产品风格和构建类型,请参阅:了解更多信息 细节

然后在您的代码中使用如下代码引用您的资产:

AssetManager am = context.getAssets();
InputStream is = am.open("awsconfiguration.json");
参考:


  • 将这两个文件复制到两个不同的文件夹中,然后通过生成类型将目标设置为这些文件夹谢谢!成功了!甚至不需要使用源代码集。