AndroidAnnotations使用说明书—AndroidAnnotations是如何工作的?

        AndroidAnnotations的工作方式很简单,它使用标准的java注入处理工具,自动添加了一个额外的编译步骤来生成源代码。

        源码是什么?每一个增强的类,比如每一个用@EActivity注入的Activity,会自动生成一个以该类类名+下划线为类名的该Activity子类。

        比如下面这个类:
package com.some.company;


@EActivity
public class MyActivity extends Activity {
  // ...
}

        将会生成下面这个子类,他们在同一个包下面但处在不同的文件夹:
package com.some.company;


public final class MyActivity_ extends MyActivity {
  // ...
}

        这个子类通过复写一些方法(比如onCreate())来为你的activity增加一些行为。

        上面介绍的这些就是你在AndroidManifest.xml生命Acitivty时需要为你的类名后面增加一个下划线的原因:
<activity android:name=".MyListActivity_" />


启动一个使用注入的Activity:

        在Android中,我们通常会通过如下的方式来启动一个activity:
startActivity(this, MyListActivity.class);
        然而,如果使用AndroidAnnotations的话,真正被启动的activity是MyListActivity_而不是MyListActivity:
startActivity(this, MyListActivity_.class);


 Intent Builder(AndroidAnnotations 2.4及以上):
        我们提供了一个静态的帮助类来启动编译生成的activity:
// Starting the activity
MyListActivity_.intent(context).start();


// Building an intent from the activity
Intent intent = MyListActivity_.intent(context).get();


// You can provide flags
MyListActivity_.intent(context).flags(FLAG_ACTIVITY_CLEAR_TOP).start();


// You can even provide extras defined with @Extra in the activity
MyListActivity_.intent(context).myDateExtra(someDate).start();


        在AndroidAnnotations 2.7及以上的版本中你可以使用另一个启动Activity的方法startActivityForResult()了 :
MyListActivity_.intent(context).startForResult();


启动一个使用注解的服务:
        在Android中,我们通常通过如下的方式来启动一个服务:
startService(this, MyService.class);


        然而,如果使用AndroidAnnotations的话,真正被启动的Service是MyService_而不是MyService:
startService(this, MyService_.class);


Intent Builder(AndroidAnnotations 2.7及以上版本):
        我们提供了一个静态的帮助类来启动生产的Service:
// Starting the service
MyService_.intent(context).start();


// Building an intent from the activity
Intent intent = MyService_.intent(context).build();


// You can provide flags
MyService_.intent(context).flags(Intent.FLAG_GRANT_READ_URI_PERMISSION).start();
回答: 在Android Studio中添加配置的步骤如下: 1. 打开项目的build.gradle文件,该文件位于项目的根目录下。 2. 在buildscript的dependencies块中添加需要的配置依赖项。例如,如果你想添加android-apt插件,你可以在dependencies块中添加以下代码: classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4' \[1\] 3. 在distributionUrl中指定Gradle的版本。你可以在gradle-wrapper.properties文件中找到这个配置项。例如,你可以将distributionUrl设置为: distributionUrl=file\:/Users/coco/work/software/android_tools/mac_android_tools/Gradle/gradle-2.12-all.zip \[2\] 4. 在终端中设置Gradle的路径。你可以使用export命令将Gradle的路径添加到系统的PATH变量中。例如,你可以运行以下命令: export PATH=${PATH}:/Users/coco/work/software/android_tools/mac_android_tools/Gradle/gradle-2.12/bin \[3\] 这样,你就可以在Android Studio中添加配置了。请确保按照上述步骤正确配置,并根据你的实际情况进行相应的修改。 #### 引用[.reference_title] - *1* [Android Studio中使用Gradle和AndroidAnnotations](https://blog.csdn.net/ocean20/article/details/44237275)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [mac android studio config](https://blog.csdn.net/hsyouxishe/article/details/51232680)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值