博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Application
阅读量:4943 次
发布时间:2019-06-11

本文共 1408 字,大约阅读时间需要 4 分钟。

第一步、写一个全局的单例模式的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;}@Overridepublic void onCreate() {super.onCreate();}@Overridepublic 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。

转载于:https://www.cnblogs.com/dingchao823/p/4844733.html

你可能感兴趣的文章