lint 仅用5分钟,搞定Android同事所有不规范代码( 三 )


为什么要定制?现有的规则不符合自己或者团队的开发需求,或者Lint存在一些缺陷。网上大多数文章都是一样的,都是以打印日志为例,看起来很累。既然没有官方文档和第三方教程(可能是因为lint的api更新太快,没人愿意做这种吃力不讨好的工作),这是唯一的办法。本文通过定制命名规则来解释整个过程。
衣料中的重要原料药
先学习相关的api,可以快速理解一些概念,可以大致看一下,练习完再回来看。
1、发行
如上所述,问题是指由lint工具检查的规则,一个规则包含几个问题。通常在检测器中创建。以下是创建问题的示例。
private static finalize SUE ISSUE = ISSUE . create(" NamingConventionWarning "/>
将lib.jar复制到以下目录:
~ /.android/lint/
如果lint文件夹不存在,请创建它。通过命令行输入lint - list。滑动到最后查看配置的规则,如图所示:

lint 仅用5分钟,搞定Android同事所有不规范代码


文章图片

重启Android Studio,规则生效。检测到方法大写,不符合命名标准。举报问题。

lint 仅用5分钟,搞定Android同事所有不规范代码


文章图片

类名不符合规范:

lint 仅用5分钟,搞定Android同事所有不规范代码


文章图片

从上面可以看出,放在目录下的jar包对所有项目都有效。如果你想针对单个项目,你需要AAR表。
美国退休人员协会表格
在同一个项目中新建一个名为lintLibrary的Android库,修改相关配置。
1.修改Java项目的依赖关系
修改定制lint规则的Java库的build.gradle(这里是上面的Java lib库),注意实现应该改为compileOnly。
applyplugin: 'java-library '
依赖项{
implementation FileTree(dir:' libs ',包括:[ '*。jar'])
//将实现更改为compileOnly,或者报告一个错误
compileOnly ' com . Android . tools . lint:lint-API:26 . 4 . 2 '
compileOnly ' com . Android . tools . lint:lint-checks:26 . 4 . 2 '
}
jar {
清单{
属性' Lint-Registry-v2 ':' com . git code . lib . register '
}
}
sourceCompatibility = "7 "
【lint 仅用5分钟,搞定Android同事所有不规范代码】targetCompatibility = "7 "
2.修改安卓库依赖项
Android Library主要用于输出AAR文件,所以要注意Android Studio新特性的变化(这里踩了个大洞)。
依赖项{
......
临帖发布项目(':lib ')
}
在Android Studio 3.4+中,lint checks项目(':lib'): lint checks只在当前项目即Android Library中生效,不会打包到AAR文件中。只有lintPublish项目(':lib ')会在AAR文件中包含lint check。
3.输出AAR文件
这时候输出普通的AAR文件没什么区别,但是为了教你第一个自定义的问题,我写了!
步骤:
菜单栏:视图->:工具窗口->;Gradle
此时,Android Studio将打开右侧的以下窗口:

lint 仅用5分钟,搞定Android同事所有不规范代码


文章图片

按照上面的操作,双击assemble,等一会儿,在控制台上看BUILD SUCCESSFUL,然后可以在下面的目录中找到AAR文件。
lint library->;构建->。输出->;碱集料反应
本节中的步骤也可以从命令行执行。
4.使用AAR文件
有本地依赖或上传远程仓库。这里只介绍局部依赖。将上述汇总生成的AAR文件复制到app的libs文件夹中。并配置应用程序组件的build.gradle
仓库{
flatDir{
dirs'libs
}
}
依赖项{

推荐阅读