【版权申明】非商业目的可自由转载
博文地址:https://blog.csdn.net/ShuSheng0007/article/details/92795576
出自:shusheng007

文章目录

  • 概述
  • 调试方法
    • 1 配置remote configuration
    • 2 配置gradle.properties 文件
    • 3 运行调试
  • 总结

概述

当我们开发一个Android Annotation Processor的时候肯定需要调试我们的代码,但是Annotation Processor的执行是与编译并行执行的,所以如果我们只是按照通常的方式简单的打一个断点,代码是不会中断的。

调试方法

我们需要使用远程调试,我们就以上篇文章秒懂Android注解处理器中开发的 AnnotationProcessorToy为例来演示一下如何调试Annotation Processor。

1 配置remote configuration

在Android Studio中配置configuration ,如下图所示

点击+ 号,选择Remote

给新建的configuration命名,例如命名为APT. 复制蓝色框中的参数,接下来会用到。

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005

点击apply 按钮

2 配置gradle.properties 文件

在gradle.properties文件中添加如下两行内容,第二行的值为上一步蓝框中的内容。

org.gradle.daemon=trueorg.gradle.jvmargs= -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005

3 运行调试

首先选择选择第一步创建的 configuration APT,然后点击debug按钮。

如果一切正常的话,在Console窗口会输出如下内容,表示远程进程已经启动了

在processor代码中要调试的地方打上断点,然后切换到configuration app ,然后点击debug按钮即可

note:注意,只有被注解标记的类内容有改变时注解处理器才会执行,所以如果发现断点没有中断,记得改一下源代码。

总结

Annotation Processor的调试主要还是使用了remote调试的技术,Android Stuido的debugger 是运行在自己的进程中,而Annotation Processor 运行在另一个进程中,我们就是通过Remote Debug使得 debugger 可以调试运行在另一个进程中的程序。

更多相关文章

  1. Android(安卓)N调用系统安装APK方法报错原因整理及解决方案
  2. Win10下编译Android(安卓)Ogre3d 1.12.6
  3. Gradle???????
  4. kotlin 配置开发环境
  5. Android(安卓)Studio配置AspectJ(使用jar包的方法)
  6. android studio 无线调试 及 adb环境变量配置
  7. Android图片选择器、多选框架
  8. Android(安卓)studio 上传Android(安卓)library到jcenter
  9. Android运行时权限一览表

随机推荐

  1. Android(安卓)NDK开发method GetStringUT
  2. android页面全屏及状态栏和导航栏的(沉浸
  3. android搭建环境错误 daemon not running
  4. android实现开机自启动服务
  5. Activity 属性
  6. android定义圆形按钮Shape,选中改变颜色
  7. Android(安卓)Apk脱壳(360加固)
  8. android应用安全——数据安全
  9. Android(安卓)程序退出的办法
  10. 关于打印日志的使用