我已将ADT更新为第21节,此代码中出现了新警告:
if (e.getMessage().toLowerCase().contains("blabla"))
Implicitly using the default locale is a common source of bugs: Use toLowerCase(Locale) instead
Run Code Online (Sandbox Code Playgroud)
所以我尝试:
if (e.getMessage().toLowerCase(Locale.ENGLISH).contains("blabla"))
Run Code Online (Sandbox Code Playgroud)
但错误仍然存在!如何修复这个?
Gab*_*tto 109
Locale.getDefault()
如果你不能确定你的文本总是用英文,你应该特别使用.在您再次运行lint或清理项目后,您所拥有的lint错误通常也会消失.
Mah*_*rad 31
您只需清理项目即可
实际上,Locale.getDefault()
当目标是向用户呈现文本时使用.但是,这是Lint检查的重点,Locale.US
只要目标是机器可读性/使用,您就应该使用它.因为Locale.getDefault()
如果您没有指定一个,它已经隐式使用,并且当设备指定了自己的默认语言环境时,这可能导致很难找到错误.您似乎也需要像其他人所建议的那样以任何方式清理您的项目.
归档时间: |
|
查看次数: |
31566 次 |
最近记录: |