字符串资源ID值是否保证在不同项目中保持一致?

时间:2010-06-07 08:05:49

标签: android resources

我有一些消息通过php从我的服务器传回来。问题是这些消息是英文的,如果用户使用的是另一种语言,他们仍会收到英文信息。

所以我有一个想法,也许不是传回消息,而是我会从Android应用程序传递String资源ID,这样应用程序将获得他们语言的正确字符串ID。我将在许多应用程序中使用它,所以我只想知道不同的android项目中字符串ID是否保证相同?

3 个答案:

答案 0 :(得分:5)

没有

相同应用程序的重新编译之间甚至可能不保证字符串资源ID相同(例如aapt版本之间的差异)。

答案 1 :(得分:1)

Christopher是对的,但您可以将参数传递给服务器,例如http://example.com/script.php?lang=en或lang = fr ....

这样php脚本就可以使用此参数返回相关语言环境中的消息。

答案 2 :(得分:0)

您可以从字符串中获取资源ID:

int resID = getResources().getIdentifier("org.my.package:strings/my_string",     null, null);
// or
int resID = getResources().getIdentifier("my_string", "strings", "org.my.package");