当前位置: 首页 > news >正文

宁波搭建网站价格如何建立免费公司网站

宁波搭建网站价格,如何建立免费公司网站,wordpress 4.9.4 下载,app备案查询网站Apt 介绍 APT(Annotation Processing Tool)是一种处理注释的工具,它对源代码文件进行检测找出其中的 Annotation,根据注解自动生成代码。 Annotation 处理器在处理 Annotation 时可以根据源文件中的 Annotation 生成额外的源文件和其它的文件(文件具体内容由 Annot…

Apt 介绍

APT(Annotation Processing Tool)是一种处理注释的工具,它对源代码文件进行检测找出其中的 Annotation,根据注解自动生成代码。 Annotation 处理器在处理 Annotation 时可以根据源文件中的 Annotation 生成额外的源文件和其它的文件(文件具体内容由 Annotation 处理器的编写者决定),APT 还会编译生成的源文件和原来的源文件,将它们一起生成 class 文件。我们 Android 常用的库如 Dagger2, ButterKnife, EventBus3 等都使用了 APT 的技术。

本篇通过一个简单的 Android 路由的项目来介绍 APT 相关内容和进行 APT 开发的大致流程。

使用 APT 开

发自动生成路由表的库

首先我们创建一个名字为 route-annotation 的 module,定义 APT 需要处理的注解。

  • 在创建一个名字为 route-compiler 的 module 实现一个注解处理器。

  • @SupportedAnnotationTypes 表示我们需要处理哪些注解

  • @SupportedSourceVersion 表示我们生成的代码是 Java 的哪个版本

  • 类会封装成 TypeElement

  • 方法会被封装成 ExecuteableElement

  • 字段会被封装成 VariableElement

  • element.getEnclosingElement();// 获取父元素

  • element.getEnclosedElements();// 获取子元素

在 module 对应的 build.gradle 里添加一下依赖

下面就来创建我们的处理器 RouteProcessor

我们需要创建一个名为 RouteProcessor 的类继承 AbstractProcessor,并添加三个注解 @AutoService@SupportedAnnotationTypes@SupportedSourceVersion

然后我们一般需要重写 AbstractProcessor 的两个方法 init(ProcessingEnvironment processingEnv)process(Set<? extends TypeElement> set, RoundEnvironment roundEnvironment),通过 init 方法的 processingEnv 我们可以得到一些辅助类, 通过 process 的 roundEnvironment 我们可以得到被注解对象(Element)的集合,相关代码如下

这里介绍下 Element 的概念, 注解处理器会把我们注解的方法、字段、类等等封装成一个 Elment 的对象,

然后我们可能通过这个对象获取被注解对象的信息(如方法的参数和返回值、字段的类型和名字等等),并且这些 Element 元素还相当于 XML 中的 DOM 树,通过相关方法可以访问它的父元素或者子元素。

如下面这段代码,通过 Element 获取需要的信息

我们通过注解对象的信息用 javapoet 这个库来生成相关的代码

  • 最后我在需要是用 route 的 module 使用我们上面写好的库

在 build.gradle 增加相关依赖

在需要的被路由的 Activity 声明 @Route 的注解

  • Make Project 一下就能在 build/generated/source/apt/debug 下面看到生成的类了

http://www.yidumall.com/news/92393.html

相关文章:

  • 北京网站建设公司黄页淘宝引流推广怎么做
  • 自助网站开发如何结合搜索检索与seo推广
  • 公司网站备案怎么做今日国内新闻最新消息
  • 网站如何做中英文双语言版本小型项目外包网站
  • 免费模板下载软件免费seo网站推广在线观看
  • 用易语言做网站谷歌搜索入口 镜像
  • 全国网站制作公司排名互联网营销师证书怎么考多少钱
  • 邯郸企业做网站方案企业官网
  • 做网站一定要购买虚拟主机吗公众号软文怎么写
  • 中建名城建设有限公司 网站财经新闻每日财经报道
  • 为什么营销型网站比普通网站建站贵福州外包seo公司
  • 营业范围中网站开发与网页设计什么是软文营销?
  • 重庆做网站及优化报价茶叶营销策划方案
  • 网站模板加盟代理软件开发公司联系方式
  • 建设信息发布功能的网站seo高级优化技巧
  • 计算机学软件开发哪个学校好seo搜索引擎优化总结报告
  • 黄村网站建设价格连云港网站seo
  • devexpress 网站开发怎么才能在百度上打广告
  • 长沙网站制作费用惠州自动seo
  • 个人网站推广方法杭州优化seo
  • 做免费网站怎么赚钱的网络广告策划方案范文
  • 网站图片添加alt标签如何在百度发视频推广
  • 网站模仿1688关键词怎么优化
  • 做网站开发工资怎样龙华线上推广
  • 广州建网站腾虎优化大师
  • 防水网站的外链如何找淘宝运营培训机构
  • 网站建设需求分析流程网站建设
  • 大连模板网站制作抖来查关键词搜索排名
  • 潍坊网站建设哪家便宜网上代写文章一般多少钱
  • 男孩子怎么做网站磁力搜索器kitty