Android Application作用

本文详细介绍了Android系统如何为每个程序创建唯一的Application类及其生命周期,强调了Application类在处理内存管理和数据共享方面的作用。同时,文章探讨了Android应用的启动流程,并提供了优化启动时间的策略,包括避免在关键生命周期方法中进行耗时操作,以及合理处理 SharedPreferences 的初始化。此外,还提到了如何通过Application类在不同Activity间传递数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android系统会为每个程序运行的时候创建唯一的Application类,而且Application类对象的生命周期等于程序的生命周期;

1.重写处理Application类的生命周期事件:

onCreate(): 在应用程序创建的时候被调用,可以得到 Application 的单例,可以实现这个这个方法来创建和实例化变量或共享资源。
onLowMemory(),onTrimMemory()可以在低内存的时候清除缓存或释放资源;

2.传递数据:

在Application类中定义存和取方法:

通过getApplication()方法拿到Application类的对象,通过这个对象可以在一个Activity中存入数据,在另一个activity中读出数据;

 

 

app启动流程:

Application构造器方法--->Application中attachBaseContext()--->Application中onCreate()--->Activity构造方法--->onCreate()--->配置主题中背景等属性——>onStart()——>onResume()——>测量布局绘制显示在界面上。

优化应用启动时间:

1.在Application类中的构造器/attachBaseContext/onCreate方法中不要进行耗时操作;

2.如果在Activity类中对sp进行初始化,由于sp的特性会把数据全部读出来并放在内存里,所以大文件的sp初始化可以放在异步线程中处理而不放在主线程中;

3.对于Activity类初始化,因为计算启动时间是到获取第一帧截至,所以尽量减少布局层次性,以及onCreate、onStart、onResume方法中避免做耗时操作;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值