Android:使用Aspect插入代码

2018-07-02  本文已影响7人  奋斗滴猩猩

一、背景:

当插件项目打开界面后弹出吐司,但是插件代码没办法直接更改,通过aspect的引入,使用@Before("execute(* 类路径.方法名)")---在该类的该方法名前插入代码;AspectJ定义了AOP语法,它有一个专门的编译器用来生成遵守Java字节编码规范的Class文件,支持静态编译和动态编译。
实例如下:
先配置

'import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
.........
/**
 * AspectJ相关: 检测Aspect类
 */
@Aspect
public class GodEyeSegmentAspectJ {
       @Before("execution(* 类路径.onResume())")
        public void joinCode(JoinPoint aJoinPoint) {
                Log.d("code", "注入成功");
         }
}

参考:CSDN的博客:AOP之AspectJ - 代码注入

上一篇 下一篇

猜你喜欢

热点阅读