這段時間忙公司的項目,期間遇到了以前沒有碰到的問題,現在終於消停一會了,,找個時間來總結一下:
今天主要是來說說android中的Application的使用。。。
在android中,當我們需要使用到一些全局的信息例如一個entity或是一個location的時候,你可以用一個Global的類型來處理,也可以放到臨時建立的數據庫中,再者你也許想到放到sharedpreferenced中,但這些都或多或少的問題,此時我們可以使用Application了。通常使用application分一下幾個步驟:
1:定義一個類去繼承系統的Application
public class MyApplication extends Application
在onCreat中做一些初始化工作,設置全局中要使用到的成員變量【一般都會設置對應的get和set方法】
2:在AndroidManifest.xml中進行配置
在 application節點:
<application
android:name="******.MyApplication" //類的全路徑即完整的包名+類名
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
3:在需要的地方直接使用【Activity、Service等】
MyApplication application;
application = (MyApplication) getApplication(); //將當前的上下文拆箱轉為我們自定義的application
這個時候我們就可以使用MyApplication中我們定義的屬性了
例如在service我們不斷的去定位,此時的location我們既需要最新的數據同時其它的組件要能及時獲取最新的location,我們在sevice中 application.setLastLocation(l);,通過這句話我們設置好了一個全局的location,每當location定位變化的時候,都會重新設置該值。在其它組件,我們通過application.getLastLocaton()即可獲取了