Android面试题收集(Activity相关)
来源:互联网 发布:解手机密码软件 编辑:程序博客网 时间:2024/05/17 22:44
前言
看了网上的视频,感觉总结的很好,就边看边记录下来分享给需要的小伙伴。有的问题可能在开发中永远都用不到,但是面试时可能会被问到,所以还是知道的好,也有助于系统的掌握Android开发知识,向大神迈,如有理解错误,欢迎吐槽啊。后面没看完的,待续。
结构
Activity生命周期
- activity的4种状态
- running:处于活动状态,可交互,栈顶
- paused:失去焦点,被非全屏的activity占据,或者被透明activity盖着
- stopped:被另外的activity完全覆盖
- killed:被回收掉了
生命周期
- Activity启动–>onCreate()–>onStart()–>onResume()
- 被创建时回调,初始化操作,图片预加载;
- 已经处于前台状态,但无法交互,可以初始化一些资源;
处于前台,可与用户交互,可以初始化一些资源。
点击Home键回到主界面(Activity不可见)–>onPause()–>onStop()
- onPause()方法被执行;
onStop()紧随onPause()被回调。
再次回到原Activity–>onRestart()–>onStart()–>onResume()
退出当前Activity时–>onPause()–>onStop()–>onDestroy()
- onDestroy:最后一个生命周期,可以释放资源。
注意:
- 如果在回调了onPause()之后,执行onStop()之前就返回此页面,就会直接回调onResume().
Android进程优先级
- 前台:处于正在和用户交互的或者绑定了Service的进程;
- 可见:Activity处于可见,但不可交互的进程;
- 服务:后台开启的服务;
- 后台:正在交互的Activity按了home键就会变成后台进程
- 空:不属于前4种,没有运行的组件,只处于缓存的目的保留,优先级最低,随时可以kill掉。
Android任务栈
- Task,栈结构,后进先出;
- 任务栈并不一定是一个任务栈。
Activity的启动模式
- standard:创建一个实例添加到任务栈中,不关心任务栈中是否已有此类的实例;
- singletop:栈顶复用模式,如果需要创建的activity处于栈顶就不会再创建这个实例,直接复用了;
- singletask:检测当前任务栈中是否存在此类实例,如果有且不处于栈顶就会让其上面的实例清除出栈销毁,使其自己处于栈顶;
- singleinstance:在整个系统当中有且只有一个实例,独享一个任务栈。
scheme跳转协议
详细使用规则
- scheme是Android中的一种页面跳转协议,是一种非常好的实现机制。
- 通过定义自己的scheme协议可以非常方便的跳转app中的各个页面;
- 通过scheme协议,服务器可以定制化告诉app跳转哪个页面;
- 可以通过通知栏消息定制化跳转页面;
- 可以通过H5页面跳转页面等。
Fragment相关面试题
阅读全文
0 0
- Android面试题收集(Activity相关)
- Android面试题收集(Fragment相关)
- Android面试题----Activity相关问题
- Android面试题收集
- Android面试题收集
- Android 面试题收集
- Android面试题收集
- android面试题收集
- android 面试题收集
- Android面试题收集
- Android面试题收集
- Android面试题收集
- android 面试题收集
- Android面试题收集
- Android面试题收集
- Android面试题收集
- Activity相关的面试题
- Android相关面试题
- 8.14
- 7834:分成互质组
- 机器学习之Grid World的Monte Carlo算法解析
- Java mail发送邮件
- 安装hhvm服务器时遇到的一些问题
- Android面试题收集(Activity相关)
- Java框架原理之注解
- theano环境配置
- hdu 2072 单词数(字典树入门题)
- pat 1040. 有几个PAT
- 实现分页并提取出来作为模板使用
- 修改无线wifi网络名称。注册表。windows 无线属性 windows 无线 配置文件
- Table_map_log_event column types: numerical identifier and metadata
- Terrible Sets