标签:
第一步、写一个全局的单例模式的MyApplication继承自Application 覆盖onCreate ,在这个方法里面实例化Application
第二步、配置全局的Context
<application android:name="com.appstore.service.MyApplication" ></application>
第三步、使用,使用的时候根据类的名称访问Context
记住真正的Android入口点是application的main,你可以看下androidmanifest.xml的包含关系就清楚了,并不是每个应用都必须有Activity的。
就是说application是用来保存全局变量的,并且是在package创建的时候就跟着存在了。所以当我们需要创建全局变量的时候,不需要再像 j2se那样需要创建public权限的static变量,而直接在application中去实现。只需要调用Context的 getApplicationContext或者Activity的getApplication方法来获得一个application对象,再做出相应的处理。
Java代码: public class TestApplication extends Application { private int curIndex; public int getCurIndex() { return curIndex; } public void setCurIndex(int curIndex) { this.curIndex = curIndex; } @Override public void onCreate() { super.onCreate(); } @Override public void onTerminate() { super.onTerminate(); } } application中有一个curIndex和setter getter方法。 第一个acitivty中对application进行的操作: Java代码: TestApplication application = (TestApplication) this.getApplication(); Log.i("data", ""+application.getCurIndex()); application.setCurIndex(5); 第二个Activity: Java代码: TestApplication application = (TestApplication)this.getApplication(); Log.i("data", ""+application.getCurIndex()); application.setCurIndex(6); 第三个Activity: Java代码 final TestApplication application = (TestApplication) this.getApplication(); Log.i("data", ""+application.getCurIndex()); 在运行过程中,每一次都kill掉对应的Activity,再进入下一个Activity。
标签:
原文地址:http://www.cnblogs.com/dingchao823/p/4844733.html