AspectJ为单个Android项目使用2个Aspect文件

时间:2015-11-02 10:26:49

标签: android aspectj

我有一个在Eclipse中测试的Android应用程序。我要执行2 pointcuts。一个用于所有方法,一个用于onClickListener。我的Android项目中有多个包。 pointcuts如下 -

 pointcut methodCalls():
          execution(* com.example.buttontestaspect..*(..)) ||  execution(* com.example.hello..*(..))  && !within(com.example.buttontestaspect.testbutton);

pointcut OnClickListener_onClick(View v) :
        execution(void OnClickListener.onClick(View)) && args(v);

如果我在单个Aspect文件中同时使用pointcuts,则由于在pointcut methodCalls()中测试了多个软件包,因此会影响Android应用启动。

因此,我计划为每个pointcut使用2个Aspect文件。这很好还是还有其他更好的解决方案吗?

1 个答案:

答案 0 :(得分:0)

我自己就找到了答案。我为每个切入点使用了2个Aspect文件,发现没有多少用处。为了避免这个应用程序崩溃,我找到了一个解决方案。一次测试1个包并在测试前一个包之后加载下一个包。