前面在Android RoboGuice 使用指南(1):概述 /kf/201205/130089.html對應Roboguice做瞭簡要的介紹,之後介紹瞭Google Guice的基本用法,Roboguice是基本Android和Google Guice開發的適用於Android平臺的Dependency Injection 開發包,下圖為使用Roboguice開發應用的基本框圖:
Android應用程序可以直接使用Google Guice來為普通類進行註入操作,而對和Android平臺相關的類如Activity,Context,Service,View等可以使用Roboguice 進行註入操作。
在例Android RoboGuice 使用指南(2):第一個例子Hello World /kf/201205/130091.html介紹瞭使用RoboGuice開發的步驟,原先從Activity派生的類一般需要改成從RoboActivity派生,並添加從RoboApplication派生的類作為Application應用的Application類,詳細的對應表如下:
RoboGuice支持的標記如下:
@ContextScoped : 表示Scope為Context 范圍 Android RoboGuice 使用指南(11): Scopes /kf/201205/130102.html
@InjectExtra : Intent的getExtra 的註入標記
@InjectPreference: 註入Preference
@InjectResource: 註入Resource,如drawable, icon 等
@InjectView: 註入View
@Inject: Guice標記,可以註入Android平臺支持的各種服務,比如LocationManager等。
@SharedPreferencesName: SharedPreferences 名稱等
此外,RoboGuice還提供瞭簡單的消息publish/subscribe 機制,以及可以支持Dependency Injection的RoboThread, RoboAsyncTask ,RoboLooperThread 等,將在後面的文章詳細說明。
摘自 引路蜂移動軟件