AndroidAnnotations注解框架

特点:
(1) 依赖注入:包括 view,extras,系统服务,资源等等
(2) 简单的线程模型,通过 annotation 表示方法运行在 ui 线程还是后台线程
(3) 事件绑定:通过 annotation 表示 view 的响应事件,不用在写内部类
(4) REST 客户端:定义客户端接口,自动生成 REST 请求的实现
(5) 没有你想象的复杂:AndroidAnnotations 只是在在编译时生成相应子类
(6) 不影响应用性能:仅 50kb,在编译时完成,不会对运行时有性能影响。

配置:
添加apt插件:

buildscript {
    ....
    dependencies {
        classpath 'com.android.tools.build:gradle:2.1.2'
        //添加apt的路径
        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
    }
}

在app的build文件的头部,添加如下:

apply plugin: 'android-apt'
def AAVersion = '3.2+'

配置插件:

//配置apt插件
apt {
arguments {
androidManifestFile variant.outputs[0]?.processResources?.manifestFile
//        androidManifestFile variant.outputs[0].processResources.manifestFile
        //必须填你自己的包名 可 参见 applicationId "com.ecric.http"
        resourcePackageName 'com.ecric.http'
    }
}

以及如下代码:

android {
    ....
    packagingOptions {
        exclude 'META-INF/maven/org.androidannotations/androidannotations-api/pom.xml'
        exclude 'META-INF/maven/org.androidannotations/androidannotations-api/pom.properties'
        exclude 'androidannotations-api.properties'
    }

}

dependencies节点添加如下:

apt "org.androidannotations:androidannotations:$AAVersion"
compile "org.androidannotations:androidannotations-api:$AAVersion"

使用:
注解Activity:

@EActivity(R.layout.activity_main)
public class MainActivity extends AppCompatActivity {

}
 使用EActivity注解过的Activity,会自动生成一个Activity_,例如上面会生成的MainActivity_,
 当然在使用的时候必须使用MainActivity_而不是MainActivity,如在启动时,配置文件如下:


 <activity android:name=".MainActivity_">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
    
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

更多注解参考github官方:
https://github.com/androidannotations/androidannotations/wiki/AvailableAnnotations

混淆

############====================androidannotations====================##############
-dontwarn org.androidannotations.**
-keep class org.androidannotations.** {*;}
##处理注释属性
#-keepattributes *Annotation*
#
-dontwarn org.springframework.**
#-keep  class org.springframework.**{*;}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值