为方便起见,Roboguice针对Android平台常用的一些对象或服务提供了“标准注入”支持。比如无需使用(SensorManager) getSystemService(SENSOR_SERVICE) 来取得SensorManger 实例,而直接使用@Inject 标记

@Inject SensorManager sensorManager;

Roboguice 自动为sensorManager 注入所需SensorManger 对象, Roboguice支持的标准注入有如下:

@Inject ContentResolver contentResolver;
@Inject AssetManager assetManager;
@Inject Resources resources;
@Inject LocationManager locationManager;
@Inject WindowManager windowManager;
@Inject LayoutInflater layoutInflater;
@Inject ActivityManager activityManager;
@Inject PowerManager powerManager;
@Inject AlarmManager alarmManager;
@Inject NotificationManager notificationManager;
@Inject KeyguardManager keyguardManager;
@Inject SearchManager searchManager;
@Inject Vibrator vibrator;
@Inject ConnectivityManager connectivityManager;
@Inject WifiManager wifiManager;
@Inject InputMethodManager inputMethodManager;
@Inject SensorManager sensorManager;

我们使用SensorManager 为例,说明一下Standard Injection的用法,本例基于Android ApiDemos示例解析(90):OS->Sensors 。

修改

private SensorManager mSensorManager;

private @Inject
SensorManager mSensorManager;

去掉onCreate 中的

mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);

运行实例,可以看出不用使用getSystemService,Roboguice自动为mSensorManager 赋了值。

本例下载

更多相关文章

  1. 实例14---不准+弱智的生物钟
  2. Android(安卓)逐帧动画创建实例详解
  3. Android中文API(127) ―― MessageQueue
  4. android事件处理的四种写法--电话拨号为例
  5. Android(安卓)Audio代码分析6 - AudioEffect
  6. Android(安卓)Google Maps 完整实例分析
  7. Android的Socket编程实现
  8. [Android]IPC通信之Messenger的使用方法介绍
  9. android之反射创建一个实例:构造方法带参和不带参

随机推荐

  1. Android源码修改后的语音录音代码
  2. 一种Android客户端架构设计分享
  3. Android(安卓)RxJava 实际应用讲解:合并数
  4. Android(安卓)自定义View
  5. Android网络解析
  6. android4.2 keyguard流程
  7. Android(安卓)Application启动流程分析
  8. Android-VideoView播放网络视频
  9. android 串口jni 开发流程
  10. 【072】◀▶ Android(安卓)(IV) - 显示及