Application与Context关联

在发展中Application分类,几乎每个项目将用于,它的四个组成部分的实施优化,它是一个全球性的框,这可能是这么理解,例如,我们可以application类存储一些变量,在其他类访问,例如,在A类被存储在可变Appliaction类中,然后在B类中能够获取,可是在Application中存放静态的变量,easy被系统回收,今天讲的是Application与Context的关系

请看图:

从图能够看出Application是Context的子类,

从java继承的关系看,子类的功能一定要比父类的功能强大,我们在项目中非常多地方都会用到Context这个对象,一种方法是通过方法传递,一种方法是通过控件的方法获取,在android中经常使用的布局对象也能够获取,比方:LinearLayout ,RelativeLayout FrameLayout,都提供了getContext()方法获取Context对象,还有另一种就是直接在Application类中直接使用了,

public class BaseApplication extends Application {
	public static BaseApplication mInstance;
	@Override
	public void onCreate() {
		super.onCreate();
		mInstance = this;
	}

	public static BaseApplication getApplication(){
		return mInstance;
	}
}

由于Application是Context的子类,所以直接获取到Application就能够



版权声明:本文博主原创文章,博客,未经同意不得转载。

时间: 2024-10-26 13:06:43

Application与Context关联的相关文章

Application与Context的关系

在开发中Application类,几乎每个项目中都会使用到,它是优化于四大组件运行的,它是一个全局的盒子,可以这么理解,比如我们可以在application类中存放一些变量,在其他类中可以获取到,比如在A类中把变量存放在Appliaction类中,然后在B类中可以获取,但是在Application中存放静态的变量,容易被系统回收,今天讲的是Application与Context的关系 请看图: 从图可以看出Application是Context的子类, 从java继承的关系看,子类的功能一定要比

什么时候用Application的Context,什么时候用Activity的Context

单例模式用application的context 如果我们在Activity A中或者其他地方使用Foo.getInstance()时,我们总是会顺手写一个『this』或者『mContext』(这个变量也是指向this).试想一下,当前我们所用的Foo是单例,意味着被初始化后会一直存在与内存中,以方便我们以后调用的时候不会在此次创建Foo对象.但Foo中的『mContext』变量一直都会持有Activity A中的『Context』,导致Activity A即使执行了onDestroy方法,也不

egg 官方文档之:框架扩展(Application、Context、Request、Response、Helper的访问方式及扩展)

地址:https://eggjs.org/zh-cn/basics/extend.html Application app 对象指的是 Koa 的全局应用对象,全局只有一个,在应用启动时被创建. 访问方式: ctx.app Controller,Middleware,Helper,Service 中都可以通过 this.app 访问到 Application 对象,例如 this.app.config 访问配置对象. 在 app.js 中 app 对象会作为第一个参数注入到入口函数中 // ap

AlertDialog 的context 不能是application的context

昨天做了一个demo,静态注册的BroadcastrReceiver在onReceive方法里实现 alertdialog. 但是,健哥说我的这个会报错,但是为什么没报错很奇怪,我也很奇怪,今早一来我就研究了一下alertdialog的坑. dialog 是类型同activity的应用窗口,都可以创建phonewindow实例. 看看dialog的构造函数: Dialog(@NonNull Context context, @StyleRes int themeResId, boolean cr

android Application类的详细介绍

在代码中经常看到application这个类,一直不知道这个是干什么用的,今天刚好有点时间,所以进行了详细的学习. 一.先对它的整体概念解释: 在android源码中对他的描述是; * Base class for those who need to maintain global application state. You can        * provide your own implementation by specifying its name in your        *

Android Application对象必须掌握的七点

1:Application是什么?  Application和Activity,Service一样,是android框架的一个系统组件,当android程序启动时系统会创建一个 application对象,用来存储系统的一些信息.通常我们是不需要指定一个Application的,这时系统会自动帮我们创建,如果需要创建自己 的Application,也很简单创建一个类继承 Application并在manifest的application标签中进行注册(只需要给Application标签增加个na

Android应用Context详解及源码解析

[工匠若水 http://blog.csdn.net/yanbober 转载烦请注明出处,尊重分享成果] 1 背景 今天突然想起之前在上家公司(做TV与BOX盒子)时有好几个人问过我关于Android的Context到底是啥的问题,所以就马上要诞生这篇文章.我们平时在开发App应用程序时一直都在使用Context(别说你没用过,访问当前应用的资源.启动一个activity等都用到了Context),但是很少有人关注过这玩意到底是啥,也很少有人知道getApplication与getApplica

Activity、Task、Application关系+Intent启动Flag

什么是Android  Application? 简单来说,一个apk文件就是一个Application. 任何一个AndroidApplication基本上是由一些Activities组成,当用户与应用程序交互时其所包含的部分Activities具有紧密的逻辑关系,或者各自独立处理不同的响应. 这些Activities捆绑在一起成为了一个处理特定需求的Application,并且以".apk"作为后缀名存在于文件系统中. Android平台默认下的应用程序 例如:Email.Cale

ANDROID application详解与用法

1:Application是什么? Application和Activity,Service一样,是android框架的一个系统组件,当android程序启动时系统会创建一个 application对象,用来存储系统的一些信息.通常我们是不需要指定一个Application的,这时系统会自动帮我们创建,如果需要创建自己 的Application,也很简单创建一个类继承 Application并在manifest的application标签中进行注册(只需要给Application标签增加个nam