2017-02-27 64 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> 

這樣,代碼檢查配置是基本代碼的一部分,並且所有開發人員之間共享。