繁体   English   中英

如何以编程方式将Firebase Google JSON更改为不同的构建变体?

[英]How to programatically change Firebase google JSON for different build variants?

通常,可以在productFlavors变体之间进行切换,可以使用productFlavors 但是我想在运行时使用按钮更改这些变体。

ServerType枚举类包含多个构建变体。 我有带有apiKeyurl属性的Server类。

这些变量内部是Server对象。(每个构建变量可以使用多个API)。

该枚举类具有与productFlavors相同的功能。 我可以在运行时更改这些地址,并从下拉菜单中设置活动变量。 这将影响我应用中的每个API调用。 我无法更改的是Firebase选择的google.json 有什么办法告诉Firebase使用不同的json吗? 我有4个变体,并且jsons位于项目中的每个变体文件内。

Firebase会在Build Variant应用时根据选择的Build Variant自动选择google.json。

您是否尝试过多个环境目录? 这允许您为不同的构建变体放置几个不同的google.json文件。 来自Firebase网站的帮助 )。

这也是一个专用目录,因此不是动态目录,而是Firebase在运行时可以处理的所有目录。

使用哪个google-services.json文件的选择始终由Google Play服务插件在构建时确定。 它永远不会在运行时确定。

如果您需要在运行时更改项目配置,则将无法使用该插件或其google-services.json配置文件。 您将需要找到另一种在构建时将所有可能的不同配置放入应用程序中的方法,然后选择要在运行时使用的配置。 您将必须自己调用FirebaseApp.initializeApp()而不是接受默认配置。 有很多策略可以做到这一点,但是我建议您从这里开始

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM