安卓面经_安卓基础面全解析(1/30)Activity全解析
系列专栏:
- 安卓系统Framework面经专栏链接:Android系统面试题解析大全
- 安卓系统Framework面经目录详情:Android系统面经_Framework开发面经_150道面试题答案解析
- 安卓高频面经解析大全专栏链接:Android面试题解析大全
- 安卓高频面经解析大全目录详情:安卓面经_Android面经_150道安卓基础面试题目录
- 嵌入式面经解析大全专栏链接:嵌入式面经_C++软件开发面经_111道面试题全解析
- 嵌入式面经解析大全目录详情:111道嵌入式面经题全解析软件开发面经C++面经目录
本人是2020年毕业于广东工业大学研究生:许乔丹,有国内大厂CVTE和世界500强企业安卓开发经验,该专栏整理本人对常见安卓高频开发面试题的理解;
网上安卓资料千千万,笔者将继续维护专栏,一杯奶茶价格不止提供答案解析,更有专栏内容免费技术答疑。助您提高安卓面试准备效率,为您面试保驾护航!
正文开始⬇
Activity是Android四大组件之一,是面试官最喜欢问的。如果面试官问你:
- 请介绍Activity的生命周期?⭐⭐⭐⭐⭐
- 请介绍Activity的启动模式?⭐⭐⭐⭐
- 请说下切换横竖屏时 Activity的生命周期变化?⭐⭐⭐⭐
- 请介绍Activity的启动流程?(进阶题)⭐⭐⭐⭐
- 请介绍Android应用程序的启动流程?(进阶题)⭐⭐⭐⭐
看完以下几点回答,一定可以让面试官眼前一亮。
目录
- 1、什么是Activity
- 2、Activity的生命周期
- 2.1 生命周期的几种常见情况
- 3、切换横竖屏时,Activity的生命周期变化
- 3.1 正常情况
- 3.2 配置 android:configChanges
- 4、Activity的启动模式
- 4.1 四大启动模式
- Standard
- singleTop
- singleTask
- SingleInstance
- 4.2 进阶题:谈谈四大启动模式对应的使用场景
- 4.3 如何设置启动模式
- 4.1 四大启动模式
1、什么是Activity
Activity(活动)是一个为实现交互而提供的Android应用组件。每个Activity都有一个窗口,该窗口可以全屏幕填充,也可以是一个小窗口浮动在其他窗口上。一个应用程序通常由多个Activity组成,它会指定应用程序中的某个Activity作为主Activity,这意味着当用户第一次启动应用程序时呈现给用户的活动,并且Activity可以相互跳转来执行不同的操作。
2、Activity的生命周期
先上一个官方图:
在正常情况下,一个Activity从启动到结束会以如下顺序经历整个生命周期: onCreate()->onStart()->onResume()->onPause()->onStop()->onDestory()。包含了六个部分,还有一个onRestart()没有调用,我们先介绍这六部分内容,因为这六部分 两两对应。 初学者可以将这六部分这么记:创建一个活动->可以见到该活动显示在屏幕->该活动可以触摸操作->该活动停止,不可以操作->该活动从屏幕上消失,看不到了->该活动销毁。这六个步骤就和上面六个函数一一对应。
(1) Oncreate():创建:作为生命周期的第一种方法,仅在新的Activity创建时调用。在这个方法中,可以做一些初始化工作,比如加载接口布局资源和初始化活动所需的数据。
(2) OnStart():开始:表示Activity正在启动,并且即将启动。此时Activity已经出现,但还没有出现在前台,我们还不能交互。
(3) OnResume():活动:表示Activity已经出现在前台,可见可操作。
(4) OnPause():暂停:表示活动即将停止,仍然可见,但是不能操作了。
(5) OnStop():停止:表示活动停止,此时不可见,位于后台。
(6) OnDestory():销毁:表示活动即将被销毁。这是Activity循环的最后一个回调。你可以做一些回收工作和最后的资源回收。
最后介绍第七个生命周期onRestart:
(7) OnRestart():表示Activity重启。在正常情况下,当Activity从不可见状态切换到可见状态,也就是onStop()到onStart()之间,就会调用OnRestart()。这种情况一般是由用户行为引起的。例如,用户在这个活动切换到桌面或打开另一个新的活动,然后用户返回到这个活动。
2.1 生命周期的几种常见情况
①启动ActivityA:onCreate()->onStart()->onResume()
②打开新的ActiviyB的时候,上述ActivityA的回调如下:onPause()->onStop()
③接着再次回到原ActivityA时,ActivityA的回调如下:onRestart()->onStart()->onResume()
④按back键回退ActivityA时,Activ
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
#提供免费售后答疑!!花一杯奶茶的钱获得安卓面试答疑服务,稳赚不赔# Android发展已经很多年,安卓资料网上千千万,本专栏免费提供专栏内容技术答疑!!私聊当天必回。在阅读过程或者其他安卓学习过程有疑问,都非常欢迎私聊交流。


查看12道真题和解析