【发布时间】:2014-07-14 12:46:24
【问题描述】:
我的应用程序必须在 sqlite db 中处理本地化,因为用户可以在运行时从应用程序内部更改翻译,所以我不能只使用资源文件,因为它们不能在运行时修改
我使用资源文件来存储默认翻译,并且(目前)每次应用启动时这些翻译都会导入到数据库中。
我检索和数组包含 strings.xml 中的所有字符串 Field[] 字段 = R.string.class.getFields();
并循环这个数组插入新值并更新现有值。 不幸的是,每次所有字符串都循环不是更新我的数据库的有效方法,所以我想知道是否有一种方法可以仅在原始 strings.xml 中的某些内容发生更改而不强制执行导入时执行导入,例如,存储我的数据库中应用程序的版本号,并在启动时检查此数字是否已更改,然后执行更新
【问题讨论】:
-
好吧 string.xml 只能在编译时更改,所以如果我没有误解你的话,检查你是否正在升级你的应用程序就足够了
-
@blackbelt 你的意思是检查应用程序的版本代码?我对此表示怀疑,但出于开发目的,我不会在每次修改 strings.xml 时都增加版本代码
-
但是你也没有发布它
标签: java android xml sqlite localization