在本文的第一部分中 ,我展示了在测试方面AspectJ在android开发中很有用的一些方法。 最后一部分演示了一种结合AspectJ的方法,以及如何在构建过程中使Aspect编织变得可配置。
Android + AspectJ
在互联网上进行的搜索表明,有多种方法可以将AspectJ集成到Android构建过程中,包括手动进行或使用gradle插件进行。 最近几年,我一直在使用android-gradle-aspectj插件,因为它具有一些有用的功能,并且作者似乎保持了相当好的状态。
此插件的基本设置要求将其添加到buildscript存储库和依赖项块中。 我在项目根目录的build.gradle中有此文件。
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:xxx'
classpath 'com.archinamon:android-gradle-aspectj:xxx'
} }
然后在需要的地方应用插件,因此在模块build.gradle中:
apply plugin: 'com.archinamon.aspectj'
要么
plugins {
id 'com.android.application'
id 'com.archinamon.aspectj' }
这足以运行一个简单的案例,例如