【发布时间】:2016-04-20 19:34:18
【问题描述】:
我将我的项目更新为最新的 Android API,并且该项目现在有多个已弃用的方法。 Android Studio 是否有一种很酷的方式来列出所有包含上述方法的类,例如 TODO 窗口?我知道我可以通过每一节课并有条不紊地搜索代码,但我宁愿自己轻松一点。
【问题讨论】:
标签: java android android-studio deprecated
我将我的项目更新为最新的 Android API,并且该项目现在有多个已弃用的方法。 Android Studio 是否有一种很酷的方式来列出所有包含上述方法的类,例如 TODO 窗口?我知道我可以通过每一节课并有条不紊地搜索代码,但我宁愿自己轻松一点。
【问题讨论】:
标签: java android android-studio deprecated
按照以下步骤操作: 转到分析 -> 按名称运行检查 ->键入已弃用的 API 使用情况
【讨论】:
查看How to recompile with -Xlint:deprecation,添加到root build.gradle:
allprojects {
...
gradle.projectsEvaluated {
tasks.withType(JavaCompile) {
options.encoding = 'UTF-8'
options.compilerArgs << "-Xlint:deprecation"
}
}
}
或build.gradle.kts:
allprojects {
...
gradle.projectsEvaluated {
tasks.withType<JavaCompile> {
options.compilerArgs.add("-Xlint:deprecation")
}
}
}
然后在终端启动:
./gradlew lint
或在Gradle 菜单中:
它会显示警告,但也可能在 3 个错误后失败:
Caused by: org.gradle.api.GradleException: Lint 发现项目中有错误; 中止构建。
修复 lint 发现的问题,或将以下内容添加到您的构建中 处理错误的脚本:
android { lintOptions { abortOnError false } }前 3 个错误(共 4 个)是:
在app/build.gradle 中添加这些行将无济于事。您应该修复所有错误并尝试再次启动 Lint。
android {
lintOptions {
// abortOnError false
// if true, stop the gradle build if errors are found
isAbortOnError = false
// if true, show all locations for an error, do not truncate lists, etc.
isShowAll = true
}
}
【讨论】: