大牛教你详解 Activity 的生命周期

本文详细探讨了Activity的生命周期,包括与进程的关系、home键、back键、电源键的影响,横竖屏切换的处理,以及launch mode的四种模式。此外,还提及了国内手机厂商对Android系统的定制优化可能导致的不同行为。建议开发者深入学习官方文档,理解Android源码,并通过实践来提升技能。
摘要由CSDN通过智能技术生成

最近在知乎上看到一个很基础的问题:

如何详解 Activity 的生命周期?

提问者的情况:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zalppbw7-1608543741156)(//upload-images.jianshu.io/upload_images/16595031-c0cc086386acb172.png?imageMogr2/auto-orient/strip|imageView2/2/w/732/format/webp)]

本身在知乎上问这么基础的问题再加上说我们国内的开发水平比别人的低,也难怪被所有人喷了。。。

接着,回到正题,关于Activity生命周期,对于网上也有大量博客讲到这个问题,接下来就给大家讲讲Activity的知识:

1.Activity生命周期

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-z0Vq74RB-1608543741159)(//upload-images.jianshu.io/upload_images/16595031-2944a47b0c9ea753.png?imageMogr2/auto-orient/strip|imageView2/2/w/691/format/webp)]

这幅图比较清晰,就不细说,下面我就说说图上没有的吧

(一)Activity与进程的关系

作为应用开发者,接触更多的是Activity/Service/Broadcast/ContentProvider这四大组件以及线程,往往对于进程没有很多的概念,这是google有意为之,除非在AndroidManifest.xml文件中配置android:process属性,否则一般情况下一个App是运行在一个进程中。

在Android系统启动的过程中,便创建好Android上层应用的环境,即Android Runtime,一切的应用都是运行在Android Runtime这个层面之上。而进程对于App来说是完全透明的,在Activity进入生命周期之前,会先创建好进程,可以把进程理解为Activity的载体。一个进程中可以有多个Activity,而一个Activity必须且只能存在一个进程里;进程里可以不存在任何Activity,而Activity不能离开进程而孤立存在。

(二)home键、back键、电源键、进程管理器

一般情况下

按下home键:前台Activity依次回调onPause, onStop;
按下back键:前台Activity依次回调onPause, onStop, onDestroy;
按下电源键:前台Activity依次onPause, onStop;
对于进程管理器,采用的force-stop的方式ÿ

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值