在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()即可获取了
转载自:http://blog.csdn.net/yaya_soft/article/details/16943811