android技术专栏Android 面试专辑Android面试问题专题分享

Android面试题整理(一)

2017-10-18  本文已影响124人  程序员丶星霖

Android面试题整理(一)

1.Activity和Fragment的生命周期有哪些?

(1)Activity的生命周期主要有onCreate()、onStart()、onResume()、onPause()、onStop()、onDestory()、onRestart()7个生命周期。
启动Activity.png 手机锁屏时.png 手机解锁时.png 销毁Activity.png 跳转到新的Activity.png finish掉第二个Activity.png 切横屏时.png 切竖屏时.png 设置orientationkeybroadden.png 设置orientationkeybroadden.png 设置orientationkeybroadden.png 设置orientationkeybroadden.png HOME键.png
(2)Fragment的生命周期有onAttach()、onCreate()、onCreateView()、onActivityCreated()、onStart()、onResume()、onPause()、onStop()、onDestoryView()、onDestory()、onDetach()11个生命周期。
启动Fragment.png 当Fragment手机锁屏时.png fragment手机解锁时.png frgment销毁时.png fragment跳转新页面.png 重返fragment.png HOME键Fragment.png
(3)Fragment的生命周期与Activity的生命周期是什么样的关系?
Fragment的生命周期与Activity的生命周期.png

2.Activity的四种启动模式以及使用场景

任务栈是一种后进先出的结构。位于栈顶的Activity处于焦点状态,当按下back按键的时候,栈内的Activity会一个一个的出栈,并且调用其onDestory()方法。如果栈内没有Activity,那么系统就会回收这个栈,,每个APP默认只有一个栈,是以APP的包名来命名的。

  1. standard模式
  1. singleTop模式
  1. singleTask模式
  1. singleInstance模式

3.onSaveInstanceState()和onRestoreInstanceState()方法、

  1. onSaveInstanceState()的调用时机:
  1. onRestoreInstanceState()的调用时机:

4.Android中的进程优先级?

根据进程的重要性,划分为一下5级:

  1. 前台进程(Foreground process):用户当前操作所必需的进程。通常在任意给定时间前台进程都为数不多。只有在内存不足以支持它们同时继续运行的情况下,系统才会终止它们。
  1. 可见进程(Visible process):没有任何前台组件、但仍会影响用户在屏幕上所见内容的进程。可见进程被视为是极其重要的进程,除非为了维持所有前台进程同时运行而必须终止,否则系统不会终止这些进程。
  1. 服务进程(Service process):其中运行着使用startService方法启动的Service,虽然不被用户可见,但是却是用户关心的。当系统需要空间运行前两者进程时才会被终止。
  1. 后台进程(Background process):后台进程对用户体验没有直接影响,系统可能随时终止它们,以回收内存供前台进程、可见进程或服务进程使用。 通常会有很多后台进程在运行,因此它们会保存在 LRU 列表中,以确保包含用户最近查看的 Activity 的进程最后一个被终止。
  1. 空进程(Empty process):保留这种进程的的唯一目的是用作缓存,以缩短下次在其中运行组件所需的启动时间。 为使总体系统资源在进程缓存和底层内核缓存之间保持平衡,系统往往会终止这些进程。

最近在巩固基础,整理下来,以备不时之需。最后附上个人微信公众号

0.jpg
上一篇下一篇

猜你喜欢

热点阅读