当前位置: 移动技术网 > 移动技术>移动开发>Android > Android中的Application

Android中的Application

2020年07月09日  | 移动技术网移动技术  | 我要评论

一:什么是Application

Application是维护应用程序全局状态的基类,应用进程启动时系统会自动创建aplication类并调用类的onCreate()函数,application类是context类的子类。我们可以自定义一个application并提供自己的实现。有点像iOS里面的applicatoin。

二:Application的生命周期

application的声明周期伴随整个应用的始终。从启动到结束。

在这里插入图片描述

函数 调用时机 作用
onCreate() Application 实例创建时调用Android系统的入口是Application类的 onCreate(),默认为空实现 1. 初始化 应用程序级别 的资源,如全局对象、环境配置变量、图片资源初始化、推送服务的注册等2. 数据共享、数据缓存.设置全局共享数据,如全局共享变量、方法等.注:这些共享数据只在应用程序的生命周期内有效,当该应用程序被杀死,这些数据也会被清空,所以只能存储一些具备 临时性的共享数据
onConfigurationChanged() 应用程序配置信息 改变时调用 监听 应用程序 配置信息的改变,如屏幕旋转等
onTerminate() 终止应用程序对象时调用,不保证一定被调用 当程序是被内核终止以便为其他应用程序释放资源,那么将不会提醒,并且不调用应用程序的对象的onTerminate方法而直接终止进程
onLowMemory() 当系统资源匮乏的时候 我们可以在这里可以释放额外的内存, 这个方法一般只会在后台进程已经结束,但前台应用程序还是缺少内存时调用。可以重写这个方法来清空缓存或者释放不必要的资源。
onTrimMemory(int level) 运行时决定当前应用程序应该减少其内存开销时(通常在进入后台运行的时候)调用 提供请求的上下文

三:Application的自定义

1,为什么要自定义application?

如果我们需要在程序启动时,运行一些全局代码时,可以创建一个自己的Application类并继承Application,
而且需要重写onCreate函数,启动Application,系统会为我们创建一个进程,所有的Activity都会在此进程上运行,那么我们在Application创建的时候初始化全局变量,同一个应用的所有Activity都可以取到这些全局变量。

2,appication自定义的步骤?

  1. 新建一个MyApplication继承Application。
  @Override
    public void onCreate() {
        super.onCreate();
        //这里可以提供我们自己的实现,比如:外链进来的/其他app过来的执行的一些操作或者一些开发环境变量的配置。不推荐在此执行比较耗时的操作,那样的话app启动时间会增长,影响用户体验。
    }
  1. 在AndroidManifest文件中指定自定义的Application
    在这里插入图片描述

本文地址:https://blog.csdn.net/weixin_38934440/article/details/107184920

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网