前言
本篇文章主要是记录aspectjx的集成,因为中间走了不少弯路。
找资料的时候找到了个有趣的东西。。。(上图)
言归正传,aspectj的介绍。。。 不多说,搬来搬去没什么意思。。。 但是链接还是有推荐滴 主要就是aop的一套东西 先会用再说。
心路历程(废话可跳过)
一开始看到一个项目用到了用注解判断是否登录。(眼睛一亮)
找实现方法,试了一遍注解反射,行不通(玩了估计2-3天)
无意中听说了aspectj,百度。。。集成。。。
一开始是直接集成aspectj,奈何自己太蠢,用的是kotlin不是报错就是出不了效果。。。(也折腾了2-3天)
然后就是aspectjx啦。。。 大神的框架,还是这个简单。。。 磕磕绊绊整了2天 各种很无聊的问题都去提issue 大神也很好 都 会回答
github地址在这 (aspectjx 的github)
然后就行了!
kotlin项目的集成(其实好简单。。。)
首先:
project的build ->
dependencies {
classpath'com.android.tools.build:gradle:3.0.1'
classpath"org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath'com.hujiang.aspectjx:gradle-android-plugin-aspectjx:2.0.0'
}
model的build->
加入插件:
applyplugin:'android-aspectjx'
导入支持包
//aspectj
implementation'org.aspectj:aspectjrt:1.9.1'
就可以用了。。。
注意(卡了好久)
因为什么东西都喜欢用新的,把自己坑死了。
gradle到文章发布的时候只支持到4.1
里面的规则也只支持java写的规则
个人笔记。。。第一次写。。。 过几天补一下代码。