应用程序开发人员如何在Android应用程序中存储特定应用程序(即我的服务器地址,路径端点等)全局并构建变体特定的配置值?此外,是否可以覆盖?即。我想在我的global.config中设置一个默认值,但是staging-build-variant.config和prod-build-variant.config中的冲突应该覆盖它,而dev-build-variant.config只会使用默认值。
我已经阅读过关于SharedPreferences但是这似乎是为了在以后的运行中存储运行时的用户输入,并且我已经读过关于使用类来保存常量的人,但这不太合适,因为我没有得到特定配置值的任何好处都会覆盖常见的配置值。还有很多看似过时的文章,我不确定是否准确。
我在this question中评论这个评论似乎与我正在寻找的内容很接近,但我想我会问一个更多曝光的问题。
编辑:也许我解释得很糟糕 - 澄清,this comment。
答案 0 :(得分:0)
贾斯汀,你所看到的似乎是一个图书馆项目。您必须使用一个默认配置创建库项目。 让我们说该项目名为Core,然后它具有以下strings.xml:
<string name="server_address">htt://path.to.server</string>
通过这种方式,您可以为使用&#39; Core&#39;的项目创建一个模块(名为 app1 )。图书馆项目。然后,您将以两个 strings.xml文件结束。 因此,应用程序模块中的strings.xml文件将覆盖来自库项目的strings.xml。然后你可以:
<string name="server_address">htt://app1.path.to.server</string>
[<强>已更新强>
您可以尝试使用成绩变量,而不是使用库。看到这个问题: Gradle Variables 这个关于构建变体的链接: Build variants