zoukankan      html  css  js  c++  java
  • Aplication的意义和生命周期,与Context的关系,以及关于Aplication和Context相关问题的记录和解决办法

    Context详解地址链接:

    http://blog.csdn.net/qinjuning/article/details/7310620

    Application是一个应用中有且仅有一个的全局共享变量类,在这个全局变量中可以存储一定的数据,用于整个应用中的异步沟通和数据交互。、

    自定义Application的方法:

    1.自定义一个class,假如取名app,继承Application

    2.在manifests文件中,对于Application声明一个name标签,那么这个标签的名字就可以改为android:name=".app",进行此步骤后,应用将使用自定义的Application的类

    3.这个全局的变量对象,可以在任何地方通过使用getApplicationContext()方法获得

    注:这个application的class中不能写具体的执行步骤,只能声明属性和提供修改和获得属性的方法

    Application的生命周期跟整个程序的状态息息相关,具体体现在几个函数:

    public class App extends Application {
    
        @Override
        public void onCreate() {
            super.onCreate();      // 程序创建的时候执行
        }
        @Override
        public void onTerminate() {
            super.onTerminate();    // 程序终止的时候执行
        }
        @Override
        public void onLowMemory() {
            super.onLowMemory();  // 低内存的时候执行
        }
        @Override
        public void onTrimMemory(int level) {
          super.onTrimMemory(level);   // 程序在内存清理的时候执行
        }
        @Override
        public void onConfigurationChanged(Configuration newConfig) {super.onConfigurationChanged(newConfig);
        }
        
    }


    而Context是沟通整个程序的桥梁,

    每个重要的组件都会对应一个Context对象,在Context中封装了许多抽象的方法,

    通过层层继承,在不同的位置实现抽象的方法,使得Context中的抽象方法可以沟通各个组件,其中就包括了startActivity(Intent i)方法

    ps:

    Intent是一个用于沟通各个组件的对象,其中封装了一些用户携带信息的属性,但调用context中的方法沟通不同的组件的时候,Intent中的内容自然就实现了跨组件的传递。

    自己遇到的Context相关问题收集:

    1.新建某些对象的时候,必须要有context对象作为参数,但并没有可以用来使用的context对象时,如何为该新建的方法提供context参数

    使用应用程序的context接口:

    class A = new class(getApplicationContext());

  • 相关阅读:
    英特尔“硬盘内存一体化”首款产品正式发布,读写速度超千倍,存储密度扩充十倍
    程序员,你为什么值这么多钱?
    不懂程序看的明白《黑客帝国》吗?
    程序员的工作、学习与绩效
    架构设计师能力模型
    .net平台的MongoDB使用
    转载-30分钟搞定后台登录界面(103个后台PSD源文件、素材网站)
    XAF-DevExpress.ExpressApp.DC.Xpo.XpoTypeInfoSource 生成实体的过程-学习笔记
    谈谈敏捷开发
    XAF-由于try catch导致的性能问题一例
  • 原文地址:https://www.cnblogs.com/thinfog/p/5671767.html
Copyright © 2011-2022 走看看