Перекомпиляция с -Xlint в студии Android

Когда я создаю свой Android-проект в Android Studio, я получаю сообщение:

Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

а также

Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

Я хотел бы сделать то, что предлагалось, но как? Как настроить мою студию Android для повторной компиляции моего проекта с -Xlint как предлагалось выше? (Я использую Android Studio 3.0.1)

Ответ 1

Сообщение предлагает вам перекомпилировать с args -Xlint, чтобы получить дополнительные сведения о предупреждении, добавить этот код в build.gradle:

allprojects {
    tasks.withType(JavaCompile) {
        options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
    }
}

Затем вы можете исправить предупреждения подробными сообщениями.
Например, вы можете заменить устаревший метод новым методом (всегда был новый метод, поскольку старый метод устарел).

Однако иногда нам не нужно менять наш код по некоторым причинам, мы просто хотим избавиться от предупреждения компиляции, вы можете добавить @SuppressWarnings("deprecation") перед устаревшим методом.

Ответ 2

Если вы столкнулись с проблемой при создании подписанного apk, вы можете попытаться сделать это в своем build.gradle(app)

android {
    lintOptions {
        checkReleaseBuilds false
    }
}

Ответ 3

Это какая-то ошибка в проекте, возможно из файлов XML. Отключение lintOptions не является правильным решением. Найдите ошибку и исправьте ее, для этого выполните команду ниже в Терминале Android Studio

Окна

gradlew assemblyDebug --stacktrace

MAC

./gradlew assembleDebug --stacktrace