Android
longtengyuyun
这个作者很懒,什么都没留下…
展开
-
Activity启动流程详解
Android activity启动流程针对**>26** sdk 版本在自己创建的Activity中调用startActivity()方法,其实调用流程为,在ContextWrapper中调用startActivity()方法 此方法为Context的抽象方法,由Activity重写;public class Activity extends ContextThemeWrappe...原创 2019-03-05 11:52:44 · 225 阅读 · 0 评论 -
Acvitiy四种启动模式
转载:http://www.cnblogs.com/claireyuancy/p/7387696.html在一个项目中会包括着多个Activity,系统中使用任务栈来存储创建的Activity实例,任务栈是一种“后进先出”的栈结构。举个栗子,若我们多次启动同一个Activity。系统会创建多个实例依次放入任务栈中。当按back键返回时,每按一次,一个Activity出栈,直到栈空为止。当栈中无不...转载 2019-03-19 18:17:09 · 475 阅读 · 0 评论 -
Handle内存泄漏分析和解决
handler内存泄漏在finish()的时候,该Message还没有被处理,Message持有Handler,Handler持有Activity,这样会导致该Activity不会被回收,就发生了内存泄露.解决方法通过程序逻辑来进行保护。如果Handler中执行的是耗时的操作,在关闭Activity的时候停掉你的后台线程。线程停掉了,就相当于切断了Handler和外部连接的线,Activi...原创 2019-03-19 18:52:41 · 1091 阅读 · 0 评论 -
Activity销毁不调用Ondestroy情况以及处理
1、强制回收当系统内存不足时, activity会被回收,可以重写onSaveInstanceState()方法。onSaveInstanceState()方法接受一个Bundle类型的参数, 可以将数据存储到这个Bundle对象中, 这样即使activity被系统摧毁, 当用户重新启动这个activity而调用它的onCreate()方法时, 这个Bundle对象会作为实参传递给onCreat...原创 2019-03-19 15:47:27 · 5394 阅读 · 0 评论 -
SharedPreferences
commit()方法与apply()方法的比较相同点:二者都是提交preference修改数据二者都是原子过程。区别:apply没有返回值而commit返回boolean表明修改是否提交成功apply是将修改数据原子提交到内存,而后异步真正提交到硬件磁盘;而commit是同步的提交到硬件磁盘,因此,在多个并发的提交commit的时候,他们会等待正在处理的commit保存到磁盘后在操...转载 2019-03-18 10:06:49 · 126 阅读 · 0 评论