Intellij IDEA配置Android Annotations注解框架

来源:互联网 发布:山西太原理工软件学院 编辑:程序博客网 时间:2024/05/21 15:49

Intellij IDEA配置Android Annotations注解框架

作为安卓开发人员应该对Android Annotations注解框架并不陌生,使用该框架中的注解,可以极大的简化我们开发过程中的不得不做但又毫无营养的工作,如findViewById,setOnClickListener等等。Annotations框架绝对是拯救安卓开发人员的福音和救世主,呵呵呵呵~~~NB就吹到这里,进入正题。

在Eclipse中使用该框架时,无需繁杂的配置工作,Eclipse就可以直接帮我们识别和引用使用该框架生成的代码,并直接将这些代码引用到我们的项目中去。但是随着Google推出新的安卓开发工具Android Studio之后,Eclipse正在处于渐渐被抛弃的地步,越来越多的Developer开始投向Intellij IDEA和Android Studio的怀抱,至于Intellij IDEA和Android Studio的关系,可以说是”孪生兄弟”,无论是界面还是使用习惯,都是非常类似的,所以我们就以Intellij IDEA为例讲解Android Annotations的配置过程。

1.新建工程,引入所需的jar

这里写图片描述

使用项目新建向导,创建一个Android Application,过程不再赘述,如果不会使用Intellij IDEA创建Android 项目的话,可以参看其他博文。
以下是创建的项目过程截图。
这里写图片描述
新建的项目工程会自动给我们生成一些基本的文件夹和配置文件等。
点击项目,右键,为项目新建一个文件夹并命名为compile-libs

Android Annotation共有两个资源库需要引入,分别是androidannotations-xx.jar 和androidannotations-api-xx.jar其中xx表示版本号。
将androidannotaion-xx.jar资源库拷贝到新建的compile-libs文件夹,然后将androidannotations-api-xx.jar拷贝到libs文件夹,并点击右键–>add library引入到项目中去。

2.配置Preferences相关选项

这里写图片描述
进入Preferences全局环境配置面板,依次选择【Build,Execution,Deployment】—>【Compiler】—>【Annotations Processors】菜单,在右侧主面板上方勾选【Enable annotations processing】,然后选择【Processor Path】,并在右方将路径设置为步骤1中新建的compile-libs文件夹下的androidannotations-xx.jar,然后将【Store generated sources relative to】选择为【Module Content root】,大致的意思就是要将生成的资源放在哪个文件夹下的意思。
以上配置设置完成后,点击OK应用本次设置。

3.使用Annotations编写测试代码

进行完上述一连串的配置后,也是”旦旦”碎了一地的节奏,是挺麻烦的说。
那么问题来了,配置了这么多,应该可以使用Annotations框架进行开发了吧?实践是检验真理的唯一标准,上测试代码跑程序试试看不就知道了?!

于是乎,我们写了在main.xml中写了如下简单到不行的测试布局:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"              android:orientation="vertical"              android:layout_width="fill_parent"              android:layout_height="fill_parent"              android:background="#ffffff">    <Button            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_gravity="center"            android:id="@+id/button"            android:text="Hello,Android Annotations"/></LinearLayout>

布局中只有一个id为button的按钮,然后我们想要实现的效果是点击该按钮弹出Toast并显示”Hello,Android Annotations!!!”。
MainActivity中的代码是这样的:

package com.wcl.annotation;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.Toast;import com.googlecode.androidannotations.annotations.AfterViews;import com.googlecode.androidannotations.annotations.EActivity;import com.googlecode.androidannotations.annotations.ViewById;@EActivity(R.layout.main)public class MainActivity extends Activity {    @ViewById(R.id.button)    Button button;    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);    }    @AfterViews    void initView() {        button.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                Toast.makeText(MainActivity.this, "Hello,Android Annotations!!!", Toast.LENGTH_LONG).show();            }        });    }}

然后运行程序,静静地等待见证奇迹时刻的到来~~~
然后,项目目录结构下生成了一个generated文件夹,文件夹下面有个很奇怪的MainActivity_类,再然后。。。就没有然后了==
报错了!错误信息如下:
这里写图片描述
是的,我们在使用Android Annotations框架时,我们在AndroidManifest.xml清单文件中注册Activity时,需要在类的后面添加一个下划线。然后再次运行,还是无果,那么第四步就来了。

4.设置Project Structure选项

打开项目结构对话框
这里写图片描述

在Project Structure对话框中依次按照图示步骤操作,将生成的generated文件夹内容引入到Sources中,也就是把生成的内容应哟个到项目运行中去。
然后,再次运行,可能会出现说MainActivity_找不到之类的错误,直接无视点击【Continue Anyway】,就可以正常打开应用了。

那么问题来了,这么复杂的配置过程让多少Developer望而却步,其实也就是第一次会觉得很麻烦,等感受到Annotations框架给你带来的无与伦比的快感之后,一定会让你爱的深陷其中无法自拔,哈哈~~大家思想一定要端正,别想到其他地方去了!

不扯了,写篇博客好累,找美女去打桌球去了~~

0 0
原创粉丝点击