Android面试题整理三

Posted 「已注销」

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通信流程是怎样的?

  1. Binder驱动在内核空间创建一个数据接收缓冲区。
  2. 在内核空间开辟一块内核缓存区,建立内核缓存区和数据接收缓冲区之间的映射关系,以及数据接收缓冲区和接收进程用户空间地址的映射关系。
  3. 发送方进程通过copy_from_user()函数将数据复制到内核中的内核缓冲区,由于内核缓冲区和接收进程的用户空间存在内存映射,因此也就相当于把数据发送到了接收进程的用户空间,这样便完成了一次进程间通信。
    整个过程只使用了一次复制,不会因为不知道数据的大小而浪费空间或者时间,这样效率更高。

说一说Binder的oneway机制

没看懂 看懂了再补吧

线程的消息队列是怎么创建的?

说说Android线程间消息传递机制?

说说Threadlocal的原理

以上是关于Android面试题整理三的主要内容,如果未能解决你的问题,请参考以下文章

Android面试题整理三

Android面试题整理三

2022年腾讯,阿里,美团等Android高频面试题及答案,知识脉络整理

Android 大厂高频面试题及答案,知识脉络整理

Android 大厂高频面试题及参考解答,知识脉络整理~~

面经总结开发面试题补充整理三