1

我的应用程序中有 10 个 URL,它们当前是硬编码的。我想将其外部化并将其放入文件中,以便我的应用程序可以读取它。

这样做的最佳方法是什么?

private String appURL = "http://..."
private String storeURL = "http://..."
private String someURL = "http://..."

注意:我永远不会在我的应用程序中写出这个文件。我希望开发人员能够打开文件,并在必要时更改 URL。

4

3 回答 3

3

在 android 应用程序中外部化字符串的最简单方法是使用字符串资源。uris.xml在文件夹中创建文件res/values

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="appUrl">http://...</string>
    <string name="storeUrl">http://...</string>
    <!-- etc /-->
</resources>

然后,您可以通过以下方式访问字符串:

String appUrl = getString(R.string.appUrl);
String storeUrl = getString(R.string.storeUrl);
//..etc

getString()Context类的方法。另请记住,您应该等到 aContext将被初始化后再开始访问其资源。getString()因此,不早于or的onCreate()方法调用。ActivityApplication

于 2010-11-11T16:46:09.240 回答
0

您可以将值放在 XML“配置”文件中,然后从 XML 文件中读取值。

读取 XML 文件的示例。

或者只使用Konstantin Burov指出的 Android 的原生 res 文件夹 XML 资源文件。

于 2010-11-11T16:40:37.127 回答
0

如果您希望能够编辑外部平面文件,您可以简单地在 SD 上创建一个文本文件(并具有一些默认值作为静态字符串或属性)。然后您的代码读取文件(标准 Java IO)并onCreate记录您的 Activity中的更改

您也可以在 /assets 文件夹中有这样的文件;例如看这个

于 2010-11-11T16:41:08.423 回答