可能需要的Android面试题

前言

里面有一些问题会比较深,相对一些小公司是不会问的这么深的,大厂有些会通过这些问题来考察,也可以作为自己的知识扩展了解其中问题。

  • 简述Android系统启动流程
  • Android系统中启动的第一个进程是哪个?
  • Zygote进程做了些什么工作?
  • Activity启动流程中,大部分都是用Binder通讯,为啥跟Zygote通信的时候要用socket呢?
  • 反射可以修改final类型成员变量吗?
  • 反射获取static静态变量
  • 怎么提升反射效率
  • 反射原理
  • 在java有Serializable的前提下,Android为什么设计出了Parcelable?
  • Serializable、Parcelable、Json等序列化方式我们该怎么选择?
  • Parcelable一定比Serializable快吗?
  • 为什么Java提供了Serializable的序列化方式,而不是直接使用json或者xml?
  • WindowManager是什么?和WMS的关系?
  • 怎么添加一个Window?
  • Window就是指PhoneWindow吗?
  • PhoneWindow什么时候被创建的?
  • 要实现可以拖动的View该怎么做?
  • Activity、PhoneWindow、DecorView、ViewRootImpl 的关系?
  • Application中可以直接弹出Dialog吗?
  • 关于事件分发,事件到底是先到DecorView还是先到Window的?
  • 怎么理解Binder?
  • 怎么理解ServiceManager
  • 网络通信的过程,以及中间用了什么协议
  • TCP连接过程,三次握手和四次挥手,为什么?
  • 讲一下TCP协议和UDP协议的区别和场景
  • socket和WebSocket
  • Https的连接建立过程
  • 请给我讲解一下数字签名,为什么真实可靠
  • 证书链安全机制
  • 建立过程耗时,那么怎么优化呢?
  • 讲一下HTTP和HTTPS的区别
  • 怎么实现分块传输,断点续传?
  • Http传输图片有哪些方式

***************************************************

#Android##面试##Android面试##面试题#
全部评论
很有用,收藏了
点赞
送花
回复
分享
发布于 2022-08-09 17:28
求网盘
点赞
送花
回复
分享
发布于 2022-08-11 15:15
秋招专场
校招火热招聘中
官网直投

相关推荐

点赞 1 评论
分享
牛客网
牛客企业服务