gpt4 book ai didi

Android - 根据开发环境有多个资源 xml 文件

转载 作者:行者123 更新时间:2023-11-29 02:10:01 25 4
gpt4 key购买 nike

我目前正在编写一个与外部服务器交互的 Android 应用。

我想确保在开发过程中,Android 会连接到测试服务器实例,但应用程序应该连接到生产服务器。

目前,服务器的 URL 存储在其中一个 xml 文件中 - res/values/strings.xml 为 <string name="server_url">XYZ.example.com</string> .

现在,我只是根据自己的情况修改本地机器中的 xml 文件。

处理这种情况的惯用方法是什么?

最佳答案

XML 文件就差不多了。一个例子是 mapview api key。

要开发 map View 应用程序,您需要一个基于您的构建证书的 key 。大多数人使用调试 key 构建和测试,然后使用发布 key 进行部署。您需要为每个构建 key 请求不同的 api key 。我将两个 map api key 都保存在我的资源文件中,然后在调试时注释掉我不需要的那个。

另一种方法是在字符串文件中保留两个字符串,然后使用一些编程方法来选择要使用的键。 AdMob 使用这种方法,即如果您正在测试,则将测试设备添加到添加请求。由于您不希望世界上与您使用相同手机的每个人都只看到测试添加,因此您需要将调用包装在测试与发布版本的检查中。我使用 xml 文件中定义的整数资源值来控制它。这最终的行为类似于 C/C++ DEBUG 宏。我仍然需要更改为资源值的值,但我只需要在一个地方这样做。或者,您可以使用注释来隐藏测试服务器:例如

 String server = context.getString(R.string.realserver);
server = context.getString(R.string.testserver); //comment out this line prior to release

我不喜欢评论/取消评论方法,因为它很容易忘记,尤其是当您有多个访问资源的地方时。

如果有更好的方法来处理这个问题,我也会感兴趣。

关于Android - 根据开发环境有多个资源 xml 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8041054/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com