在 Android 中保存长文本的最佳实践

Jer*_*j K 5 string resources android

我想知道在strings.xml文件中存储字符串值是否总是最佳实践,即使字符串非常大。更具体地说,我有一个游戏,我在其中显示游戏规则。所有字符的总和大于 700 个字符。目前,我将那些长字符串分解成较小的字符串(分成段落)。所以我想知道,拥有那些包含超过 700 个字符的长字符串是否被认为是一种好习惯?我知道必须考虑 HEAP 大小可以处理多少字符,但我怀疑您是否可以轻松达到限制。从我阅读的内容来看,Java 的限制设置为 (2^31 - 1) 个字符,而在 Android 中设置为 4-64 百万个字符

Yas*_*svi 4

我认为在 xml 中存储字符串没有上限,因此将字符串存储在那里是最方便的。

如果确实想采用不同的机制,您可以采用数据库或文件。但是,与从 xml 文件读取相比,从数据库和文件读取需要花费时间,并且需要更多代码来实现相同的功能。

编辑 :

我刚刚注意到你所指的字符串是游戏规则。所以我强烈建议使用 strings.xml 因为 android 使用该 XML 来将您的应用程序翻译成不同的语言

来自官方本地化指南:

将所有字符串移至 strings.xml 中。当您构建应用程序时,请记住不要对任何字符串进行硬编码。相反,将所有字符串声明为默认 strings.xml 文件中的资源,这样可以轻松更新和本地化。strings.xml 文件中的字符串可以被提取、翻译并集成回您的应用程序(使用适当的限定符),而无需对编译代码进行任何更改。