如何实现以下Stack Overflow问题中描述的内容?
How can I find all unused methods of my project in the Android Studio IDEA?
仅使用命令行?
./gradlew lint ...
答案 0 :(得分:6)
从命令行运行皮棉
通过从项目的根目录输入以下命令之一,可以使用Gradle包装器为项目调用lint任务:
在Windows上:
gradlew lint
在Linux或Mac上:
./gradlew lint
您应该看到类似于以下内容的输出:
> Task :app:lint
Ran lint on variant release: 5 issues found
Ran lint on variant debug: 5 issues found
Wrote HTML report to file:<path-to-project>/app/build/reports/lint-results.html
Wrote XML report to file:<path-to-project>/app/build/reports/lint-results.xml
当棉绒工具完成检查时,它提供了棉绒报告的XML和HTML版本的路径。然后,您可以导航到HTML报告并在浏览器中将其打开,如图2所示。
答案 1 :(得分:5)
如果您的项目包含构建变体,而您只想对特定构建变体运行lint任务,则必须将变体名称大写并以lint作为前缀。
gradlew lintDebug
要了解有关从命令行运行Gradle任务的更多信息,请[阅读从命令行构建应用程序。] [1]
[1]: https://developer.android.com/studio/build/building-cmdline
答案 2 :(得分:2)
也许可以尝试使用Linux管道符号将./gradlew lint
与grep结合使用,并过滤掉与未使用方法有关的所有问题。
./gradlew lint | grep 'unused'
,您可以根据需要修改grep字符串。
答案 3 :(得分:2)
如果使用IntelliJ,有一个简单的技巧可以找到未使用的方法:
要在整个项目上运行它,请转到“分析”->“按名称运行检查...”,键入“未使用的声明”并选择所需的范围。然后仔细检查输出,并在需要时将某些类标记为入口点。
现在,您可以在列表中选择“未使用的声明”节点,并立即对所有未使用的声明执行安全删除操作。
或在此线程中使用ProGuard: How to find unused/dead code in java projects