安卓代码分析工具

15

是否有针对Android的静态代码分析工具,可以检测出简单的问题,例如试图访问可能为空的对象(在未先进行检查的情况下)而导致的NullPointerException...

类似于C#项目中的resharper这样的工具非常擅长此类操作,因此我认为在Android的Java中也应该有类似的工具...


请查看Sonarqube - https://androidlearnersite.wordpress.com/2017/02/21/integrating-and-understanding-sonarqube-in-android/ - Android Developer
6个回答

6

那个链接仍然有效;这是另一个看起来更近期的链接;https://developer.android.com/studio/write/lint.html - AnneTheAgile

5

这并不是针对Android的特定问题,而是Java的特定问题。

我知道几个工具:

  1. PMD - 官方网站
  2. FindBugs - 官方网站

更完整的工具列表可以在维基百科上找到。


请告诉我如何对基于Gradle的Android Studio项目进行代码检查。是否有通过命令行实现此操作的方法?我更喜欢使用可以通过命令行控制的工具,因为它可以用于持续集成。 - Nevin Raj Victor

1

1

对于 Android 应用的静态分析,您可以使用以下组合:

  1. 首先使用 DED 对应用程序进行反编译并获取 Java 源文件
  2. 然后使用 SOOT 对上一步中获得的 Java 源文件进行静态分析

0

0

AndroidStudio是在IntelliJ IDEA之上的一个薄层,zloyrobot指出它有很多检查。问题在于有太多的检查,很难缩小查询范围,只选择真正好的东西。我为此开发了一个配置文件,并在这里描述了如何使用它:http://superliminal.com/computing/idea_static_analysis.html


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接