LintDemo

Project Url: xsfelvis/LintDemo
Introduction: 自定义 Lint,团队合作神器
More: Author   ReportBugs   
Tags:

为什么需要自定义 Lint

  • 原生 Lint 无法满足团队特有的需求,如:编码规范

  • 原生 Lint 存在一些检测缺陷或者缺少一些我们认为有必要的检测,如 new Message 等

自定义 Lint,主要完成了以下功能

  • Actvity、Fragment 布局文件名称前缀为actvity_fragment_的检查
  • Log、System.out.pritln 打印必须为工程中自定义的AppLog检查(这个因项目而异)
  • 检测 new Message,提醒使用Message.Obtain()/handler.obtainMessage
  • xml 文件中各种控件命名规范化,如 Buttion 前缀为 btn,适合规范化编程

依赖方式

采用 LinkedIn 提供了另一种思路 : 将 jar 放到一个 aar 中。这样我们就可以针对工程进行自定义 Lint,lint.jar 只对当前工程有效,使用前记得开启 AS 的支持自定义 Lint 检查功能,如下图

部分效果示意图

Apps
About Me
GitHub: Trinea
Facebook: Dev Tools