Activity面试小结


关于问到Activity是怎么回事的一个小结。

1.Activity的4种状态

  • Running:正在运行
  • Paused:部分覆盖
  • Stopped:完全覆盖
  • Killed:销毁

2.Activity的生命周期分析

Activity生命周期

2.1Activity启动

onCreate()->onStart()->onResume()

2.2点击Home键回到主界面(Activity不可见)

onPause()->onStop()

2.3 再次点击原Activity

onRstart()->onStart()->onResume()

2.4退出当前Activity

onPause()->onStop()->onDestroy().

3.Android当中进程优先级

前台:与用户交互的Activity和与之绑定的service

可见:可以看到的service,但是不可以点击。

服务:就是一个service。

后台:后台在跑的进程。

空:空进程的优先级最低。

4.Androd任务栈的概念

先进后出,处于栈顶的位置的Activity就是和用户交互的Activity。只有完全推出,销毁任务栈才是最安全的做法。

需要有一个概念,就是任务栈可以用很多个,在一个手机中,根据实际需要来配置。

4.1启动模式

我假定有栈s1 里面的的Activity视情况而定,现在要跳转到Activity d 。

  • standard 默认模式
  • singleTop 栈顶复用模式
  • singleTask 栈复用模式 adbc 请求d bc都会出栈 回调onNewIntent(),最终只会剩下ad
  • singInstance 栈单例模式 独享一个任务栈

可参考

Activity的四种启动模式

野望 wechat
欢迎订阅我的个人微信公众号:yewang1993