97 votes

Recompiler avec -Xlint dans le studio Android

Lorsque je construis mon projet Android dans Android Studio, je reçois un message:

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

et

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

Je voudrais faire ce que le message suggérait, mais comment? Comment configurer mon studio Android pour recompiler mon projet avec -Xlint comme suggéré par le message ci-dessus? (J'utilise Android Studio 3.0.1)

165voto

1step2hell Points 811

Le message vous suggérons de le recompiler avec args -Xlint pour obtenir plus d'avertissement de détails, ajouter ces code pour construire.gradle:

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

Ensuite, vous pouvez corriger les avertissements par des messages détaillés.
Par exemple, vous pouvez remplacer la méthode dépréciée avec la nouvelle méthode(il y a toujours eu une nouvelle méthode depuis l'ancienne méthode a été abandonnée) .

Cependant, parfois, nous ne voulons pas modifier notre code pour certaines raisons, on a juste envie de se débarrasser de la compilation d'avertissement, vous pouvez ajouter @SuppressWarnings("deprecation") devant de la méthode dépréciée.

6voto

CopsOnRoad Points 4705

Si vous rencontrez des problèmes pour générer un apk signé, vous pouvez essayer de le faire dans votre build.gradle(app)

 android {
    lintOptions {
        checkReleaseBuilds false
    }
}
 

3voto

Naveen Kumar M Points 4060

C'est une erreur dans le projet, peut-être à partir de fichiers XML. Désactiver lintOptions n'est pas une solution correcte. Recherchez l'erreur et corrigez le problème. Pour ce faire, exécutez la commande ci-dessous dans Android Studio Terminal.

les fenêtres

gradlew assembleDebug --stacktrace

MAC

./gradlew assembleDebug --stacktrace

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X