Android面试题整理三
Posted fakerXuan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android面试题整理三相关的知识,希望对你有一定的参考价值。
应用进程是怎么启动的?
应用是怎么启用Binder()机制的?
- 什么时候支持Binder机制的?
进程启动后在ProcessState里做的
谈谈你对Application的理解
- Application有什么作用?
- 保存应用进程内的全局变量
- 初始化操作
- 提供应用上下文
Application:活得长,生的早;跟者进程走而不是跟着应用走。应用开几个进程 就有几个Application。
- Application的继承关系?
- Application的生命周期
启动 : * 构造函数 、 attachBaseContext 、 onCreate
谈谈你对Context的理解
- Context的作用?
- 有哪些组件有Context?
Application Activity Service
说说Activity的启动流程?
说说Activity的显示原理?
应用的UI线程是怎么启动的?
- 什么是UI线程?
UI线程就是刷新UI所在的线程,UI是单线程刷新的
说说Service的启动原理
说说Service的绑定原理
说说动态广播的注册和收发原理
说说静态广播的注册和收发原理
说说Provider的启动原理
说说android的UI刷新机制
你对vsync信号机制有了解么?
Android Framework里用到了哪些IPC方式?
- Linux中的IPC方式
管道 Socket 共享内存 信号
谈谈你对Binder的理解
一次完整的Binder通信流程是怎样的?
- Binder驱动在内核空间创建一个数据接收缓冲区。
- 在内核空间开辟一块内核缓存区,建立内核缓存区和数据接收缓冲区之间的映射关系,以及数据接收缓冲区和接收进程用户空间地址的映射关系。
- 发送方进程通过copy_from_user()函数将数据复制到内核中的内核缓冲区,由于内核缓冲区和接收进程的用户空间存在内存映射,因此也就相当于把数据发送到了接收进程的用户空间,这样便完成了一次进程间通信。
整个过程只使用了一次复制,不会因为不知道数据的大小而浪费空间或者时间,这样效率更高。
说一说Binder的oneway机制
没看懂 看懂了再补吧
线程的消息队列是怎么创建的?
说说Android线程间消息传递机制?
说说Threadlocal的原理
以上是关于Android面试题整理三的主要内容,如果未能解决你的问题,请参考以下文章