在我的Android应用程序,例如,当我插入一个按钮,添加一个静态值,如下所示:Android部件命名标准
android:text="MY BUTTON"
它给出了一个警告说Hardcoded string "MY BUTTON", should use @string resource
。
我目前正在尝试扩展以前开发的应用程序的一些功能;是否必须将所有那些静态定义的值更改为引用string.xml文件?
任何人都可以对标准发表意见吗?提前致谢。
在我的Android应用程序,例如,当我插入一个按钮,添加一个静态值,如下所示:Android部件命名标准
android:text="MY BUTTON"
它给出了一个警告说Hardcoded string "MY BUTTON", should use @string resource
。
我目前正在尝试扩展以前开发的应用程序的一些功能;是否必须将所有那些静态定义的值更改为引用string.xml文件?
任何人都可以对标准发表意见吗?提前致谢。
你不有在所有解决这个问题,因为它是一个警告并不是一个错误。硬编码的字符串可以很好地工作。
也就是说,建议修复它,因为如果有必要,它会使您的应用程序更容易翻译成其他语言。
通常我会尝试总是在strings.xml
文件中定义字符串,因为开发新代码时确实不需要太长时间。但是,如果您不太可能需要翻译您的应用程序,那么将现有项目转换为使用strings.xml
可能会有很大的收获。
你所得到的警告是通过Android Lint utility.
一般来说,你应该养成使用字符串资源(如马克·阿利森写)的习惯,从来没有“硬编码”串码或XML标记文本就像你在那里完成的那样,无论你是否打算将你的应用程序国际化。
就未来的代码维护而言,这只是有意义的。
事实上,我已经设置了我的linter设置来将硬编码的字符串标记为错误,所以我总是注意到它。
要做到这一点,去Project
- >Preferences
,扩大Android
,选择Lint Error Checking
变 “HardCodedText”,从 “警告” 的 “错误”。