2017-02-27 66 views
15

对于用科特林我使用的测试backticked方法名,像这样我的应用程序:禁止“标识在Android中不允许”

fun `API login error - don't save token or user`() { 

它的工作原理,测试编译和工作没有问题,但皮棉Android Studio将这些方法标记为错误消息Identifier not allowed in Android

有没有什么方法可以抑制这种情况,使Lint检查通过没有错误,并且它没有在Android Studio中用红色下划线标记?

回答

7

我不确定您是否可以在代码中执行此操作,但您至少可以在IDE中将其禁用。转到“文件|设置|编辑|检查|非法Android标识符”并禁用此检查。

+0

谢谢!太糟糕了,它不能被注释压制。 –

27

基于wnc_21的答案我发现它可以被禁用的特定范围,在我的情况下它只用于测试,所以就是这样。

Android Studio disable inspection for tests scope

+1

这应该是被接受的答案 – Entreco

+1

我不想从wnc_21中获得功劳。这个答案只是建立在他的。 –

7

用途:

@file:Suppress("IllegalIdentifier") 

+0

这是一个很好的答案,因为它提供了更细化的控制,并可以与克隆代码的其他用户共享 – Juancho

1

我使用的文件的顶部

@Suppress("IllegalIdentifier") 

例如

@Suppress("IllegalIdentifier") 
class SignUpTest { 
0

有一种方法可以抑制Lint配置文件中的Lint检查,而不是注释每个文件或任何与@Suppress。请注意,它只影响从命令行执行的构建。我还没有想出如何让Android Studio使用此配置文件进行代码检查。

Android Gradle插件有lintConfig属性lintOptions在其DSL中。

它允许您指定Lint配置xml文件的路径。该功能记录在here

一个实例棉绒配置文件:

<?xml version="1.0" encoding="UTF-8"?> 
<lint> 
    <!-- Disable the given check in this project --> 
    <issue id="IllegalIdentifier"> 
     <ignore path="**/androidTest/**" /> 
     <ignore path="**/test/**" /> 
    </issue> 
</lint> 

这样,代码检查配置是基本代码的一部分,并且所有开发人员之间共享。