• 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());

  • 相关阅读:
    艾伟_转载:C#来创建和读取XML文档 狼人:
    艾伟_转载:一个.NET委托的故事:彼得,老板和宇宙 狼人:
    艾伟_转载:.NET 4.0 Beta2中的BigInteger和Complex类 狼人:
    艾伟_转载:在C#中实现3层架构 狼人:
    艾伟_转载:从MySpace基于.NET平台的六次重构经历,来感受分布式 狼人:
    艾伟_转载:.NET设计模式:单件模式(Singleton Pattern) 狼人:
    艾伟_转载:.NET重写URL浅谈 狼人:
    Windows phone8 基础篇(二) XAML简介
    TCP/IP详解第十八章
    使用JCS时出现config.OptionConverter Could not instantiate class []的错误原因
  • 原文地址:https://www.cnblogs.com/thinfog/p/5671767.html
Copyright © 2020-2023  润新知