Android中父类的AspectJ切入点

时间:2013-06-07 13:09:41

标签: java android aspectj

基本上,我想为pointcutonKeyDown()等方法插入onBackPressed()。问题是,如果这些方法不是overloadedaspect不会做出反应。插入pointcut以获取Activities(或其他父级)方法调用的正确方法是什么?

现在它看起来像是:

pointcut onKeyDown(): execution(* onKeyDown(*, *));

1 个答案:

答案 0 :(得分:0)

您无法在Android核心类中编织,因为相关的重新编译的.class文件不会集成到您的应用程序.dex文件中,因为它们是由android直接提供的。

正如您所建议的那样,您可以通过直接调用重载方法来重载这些方法。

出于同样的原因,在调用自定义代码之前,你不能在核心类中使用切入点编织:

call(* Activity.onCreate(..))

但您可以使用编写自定义代码的切入点,如:

execution(* Activity.onCreate(..))