GodEyes-android 是一款针对Android App 的源码 crash 隐患扫描工具。特点包括:
Godeyes专注于无线App代码Crash隐患静态扫描,主要有以下特性:
1. 扫描规则提取来自APP的典型crash案例代码,并且在持续增加中。
2. 覆盖已有无线代码扫描工具(findbugs、PMD、checker等)的扫描盲区。
3. 准确率不低于90%。
4. 支持Android、iOS APP代码扫描。
5. 客户端工具安装部署快捷,Eclipse插件版本、Mac一键式命令行版本。
6. 扫描规则可定制,提供多种格式的扫描报告。
一个典型的过程是每次完成你的 Android 项目的迭代后,就使用 GodEyes 扫描一次你的工程的代码。然后打开扫描结果,定位到上面列举的存在隐患的代码,确认一下是否存在隐患,然后对问题代码进行修改,这样就大大增加项目的稳定性。
GodEyes-Android 还有一个兄弟 GodEyes-iOS,顾名思义,GodEyes-iOS 所针对的是 iOS APP 源码的静态扫描。
下文将重点介绍 GodEyes-iOS
环境依赖
. 用户使用本插件需要安装的Eclipse的最低版本至少是:3.6.2 (Helios)。(Eclipse版本)
. 推荐使用 Android Studio 1.2.2 或以上版本。(Android Studio版)
GodEyes下载
. http://godeyes.duapp.com/
. 本文使用Eclipse V2.2版本进行讲解.
安装插件
. 安装过godeyes插件,把Eclipse的plugins目录中com.baidu.godeyes_*..0.0.jar包和com.baidu.godeyes_.*.0.0文件夹删除即可。
. 未安装过godeyes插件将插件com.baidu.godeyes_*.*.0.0.jar拷贝到Eclipse的安装目录的plugins目录(例如:D:\eclipse\plugins\)下,重启Eclipse即可。
插件使用
- 配置插件:Export HTML:输出报告的目录
- 根据提示配置扫描规则
- 运行插件:Eclipse上选择需要扫描的工程点击鼠标右键,执行Run Godeyes即可。
com.mydemo.com begins to scan...
Analyzing cost 47299 ms.
scan finished.
The scan report is : D:/com.mydemo.com.html
4. 去之前配置好的输出报告目录下查看报告
5.点进去之后就能看到各隐患以及推荐的解决方案。
常见的两个FAQ
为什么输出的报告中中文会出现乱码?
读取源码时默认采用utf-8的方式读取的文件,所以如果使用的中文的gbk编码会出现乱码,请自行调整文件格式。为什么执行完之后没有结果?
一个可能的原因就是没有编译成功,插件本身没有正常的提取出程序中的方法调用,所以输出的结果就是空的。