R.string.* 常量是如何生成的?

How exactly the R.string.* constants are generated?

我想将 R.string 生成的常量存储在数据库中。

常量是(半)随机生成的并且可以改变,例如版本之间?或者它们是像 hashCode 一样构建的,所以只要 XML-file <string/> 元素未被触及,它们的值就保持不变?

您不应将 R.java 常量存储在数据库中,因为它们的值在重新编译应用程序时可能会发生变化。

考虑创建某种类型的 Map<Integer, String>,其中键是整数 R.string ID,值是 String 常量。只要每个 String 常量对应一个唯一的 R.string ID 并且它们的值永远不会改变,您就可以将它们存储在数据库中。