web-dev-qa-db-ja.com

「Androidでは識別子は許可されていません」を抑制します

Kotlinで記述されたアプリケーションでは、次のように、テストにバックチェックされたメソッド名を使用します。

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

テストは問題なくコンパイルおよび動作しますが、Lint in Android Studioは、これらのメソッドをエラーとしてメッセージIdentifier not allowed in Androidでマークしています。

Lintチェックがエラーなしで合格し、Android Studioで赤い下線でマークされないように、これを抑制する方法はありますか?

27
Michał K

コードで実行できるかどうかはわかりませんが、少なくともIDEでは無効にできます。 「ファイル|設定|エディター|検査|不正Android識別子」」に移動し、この検査を無効にします。

14
wnc_21

Wnc_21の回答に基づいて、特定のスコープでは無効にできることがわかりました。私の場合はテストでのみ使用されるため、それがあります。

Android Studio disable inspection for tests scope

41
Michał K

使用する:

@file:Suppress("IllegalIdentifier")

ファイルの先頭に

11
MarcinM

私が使う

@Suppress("IllegalIdentifier")

@Suppress("IllegalIdentifier")
class SignUpTest {
4
Jack the Ripper

すべてのファイルに@Suppressで注釈を付ける代わりに、Lint構成ファイルからのLintチェックを抑制する方法があります。コマンドラインから実行されるビルドにのみ影響することに注意してください。 Android Studioがコード検査にこの構成ファイルを使用するようにする方法をまだ理解していません。

Android Gradleプラグインの [〜#〜] dsl [〜#〜]lintConfigの下にlintOptionsプロパティがあります。

これにより、Lint構成xmlファイルへのパスを指定できます。この機能は文書化されています ここ

Lint設定ファイルの例:

<?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>

このように、コード検査構成はコードベースの一部であり、すべての開発者間で共有されます。

0
Nimrod Dayan