Android 自定义Lint 基础教程

调试Lint 插件

  1. 在Android项目中,以源码形式依赖自定义Lint代码(和示例代码一致)。

  2. 提前在自定义Lint代码中打好断点。注意不是Android代码,而是编译期间Gradle加载执行的代码。

  3. 在Android Application模块的build.gradle中关闭Lint的abortOnError选项,以免还没到断点时build就中止了。

    lintOptions {
        abortOnError false
    }
    
  4. 在Android Studio的运行参数(Run Configurations)中添加一个Remote类型,都取默认值即可。

  5. 打开一个命令行窗口,执行命令

    export GRADLE_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005"
    
  6. 还是在这个命令行窗口,执行Gradle任务

    ./gradlew clean lintDebug -Dorg.gradle.daemon=false -Dorg.gradle.debug=true --no-daemon
    

设置参数关闭Gradle Deamon , 执行后Gradle会等待Android Studio调试器连接。

  1. Android Studio使用刚配置的Remote运行参数,点击调试箭头按钮,连接到Gradle就会开始执行,执行到Lint任务时就会在断点处中断,可以正常调试Java源码。
  2. 命令行执行unset GRADLE_OPTS,可关闭Gradle调试

运行方法

gralde 版本 3.x
app 是moudle 的名字,需要 clean 保证 100% 生效

./gradlew clean  app:lintDebug

代码在 github 上

完整Sample Github 地址 开箱即用

官方参考资料

可以参考google 自带的检测方式,模仿写:
Google 自带Lint 检查,参考资料

Lint 源码分析

浅谈 Android 自定义 Lint 规则的实现 (一)

浅谈 Android 自定义 Lint 规则的实现 (二)

Android Lint 工作原理剖析

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值