2014-01-25 25 views
0

我有我的Android项目Alternative strings.xml是强制性的吗?

res/values/strings.xml 
res/values/arrays.xml 

和特定语言的followint结构

res/values-en-rUS/arrays.xml 

(请注意,我没有strings.xmlen-rUS文件夹)

当我上运行Android皮棉我的项目,它返回一个错误,因为我没有在en-rUS文件夹中定义的语言键,虽然它允许根据this doc

UPDATE:问题是,我应该怎么做才能让我的项目无误地编译?我应该重新配置LINT来将这些错误显示为警告,就是这样吗?这是继续进行的正确方法吗?

+1

问题是? –

+0

Marcin Orlowski,更新了我的问题,以便更具体。 –

回答

2

不,这不是强制性的。这只是一个警告您有一些为默认区域定义的资源集合,还有一些是为en-rUS定义的。只要为en-rUS定义的所有资源都是也为默认语言环境定义的,则应用程序不会因资源缺失而崩溃。你没有默认语言环境定义如果,另一方面,你定义的资源en-rUS,并在运行时您请求这些资源在任何区域其他en-rUS,您的应用程序将抛出一个资源NotFoundException,或也许一些其他崩溃/错误取决于你如何使用缺少的资源。林特只是想警告你。

正如Niek在评论这个答案时说的那样,你可以用lint指定的customize the severity level,把它从错误改变为警告,如果甚至忽略它的话。

+0

此外,如果它现在给你一个错误*,你确实可以将它改为*警告*。 – nhaarman

+0

“这只是一个警告,你有一些资源定义” - 重点是,默认情况下它是一个错误,而不是一个警告。所以我的问题是,如果这是将严重性级别更改为警告的正确方法,或者有一些其他_proper_解决方法。现在我看到,可能没有 –

相关问题