本人遇过的常见安卓面试题(持续更新)

结合个人经历,记录下常见安卓面试题:

1、是否阅读过glide源码,glide有多少级缓存,说下glide加载图片流程。

2、讲述下mvvm架构、mvp架构

3、rxjava有哪些常用方法,如何并行执行任务?

4、handler原理,为何一个线程最多只有一个looper。子线程如何启动消息循环?

5、页面如何显示出来的?比如一个activity从setContentView开始,一直到页面显示出来,执行了哪些流程? 哪个方法调用后可以看到页面?

6、HashMap原理,HashMap是如何实现查找的,该算法时间复杂度是多少?

7、知道哪些线程安全集合?

8、了解安卓组件化开发吗?如何实现组件化开发?组件间如何通信?

9、协程是怎么实现的

10、如何实现一个线程池,参数都是什么意思?如果线程池中线程数达到最大值,继续有任务加入,线程池会怎样?

11、说下Android类加载机制

12、了解安卓插件化开发吗?宿主如何加载插件apk中的类?宿主如何访问插件apk中的资源。

13、是否做过flutter开发?

14、安卓各版本有啥差异

15、Java和c++有哪些区别

16、https证书校验过程

17、多个进程访问同一个资源文件,如何同步?

18、apk打包流程,签名校验流程

19、Android事件分发机制

20、详述下AMS

21、如何自定义控件,onMeasure方法用到的几种测量方法都是什么意思?

22、udp协议和tcp协议区别是什么

23、TS的异步方法是在子线程执行吗?

24、是否用过jni,如何用?

25、说下对称加密和非对称加密算法

26、如何性能优化,有什么经验,用的什么工具?

27、详述TCP协议3次握手、4次挥手的过程

28、怎样判断一个点在一个封闭图形内部?

29、LRUCache缓存实现原理

30、熟悉哪些设计模式?讲讲

31、okhttp怎么用,有哪些常用方法?过滤器能实现哪些功能?

32、从点击app图标开始,讲述应用启动流程。

33、安卓跨进程通信方式有哪些?aidl跨进程通信原理是什么?

34、广播有优先级吗?广播接收器可以终止广播传播吗?

35、IntentServie如何使用,任务在哪个线程执行的?

36、了解数据库锁吗?如何使用?乐观锁、悲观锁都是什么意思?

37、了解git哪些命令?git命令中rebase是什么意思?

38、怎样防止应用崩溃退出?无论如何都不能让应用崩溃退出,如何实现?

39、bindService和startService有什么不同?分别说下service生命周期。

40、activity启动模式有哪些,请详细说明差异和使用场景。

41、个人亮点,解决过什么疑难问题,如何解决的

42、某一项工作,比如开发一个音乐播放器,任务如何给组员拆解安排?

43、ANR问题如何解决?

44、如何实现消息推送?

45、如何实现即时通讯?

46、ThreadLocal原理,如何实现变量的线程隔离的?

47、java volatile关键字是什么意思,怎么用?

48、线程同步方法有哪些?怎样防止线程死锁?

相关推荐
Android小码家1 分钟前
OWASP 移动应用安全之授权(MASTG-DEMO-0090)
android·安全·frida
Summer-Bright14 分钟前
消费者 AI 变现竞争:从“一家独大“到“iOS vs Android“,谁在为 AI 买单?
android·人工智能·ios·ai·自然语言处理·agi
Xzaveir1 小时前
企业号码资产平台:逐号状态、事件日志与批次聚合
android·人工智能
恋猫de小郭2 小时前
Flutter 3D 渲染的全新选择和应用场景
android·前端·flutter
—Miss. Z—2 小时前
计算机二级MySQL——简单应用题(事件&视图)
android·mysql·adb
邪修king3 小时前
C++ 进阶终章:异常机制与智能指针全解 —— 从错误处理到 RAII 资源管理,打通现代 C++ 的核心命脉
android·数据结构·c++
三少爷的鞋3 小时前
LiveData 的缺陷:为什么我现在越来越少使用 LiveData?
android
雨白14 小时前
NDK 初探:基于 C++ 实现参数哈希与签名校验
android
程序员正茂15 小时前
Android studio中初步使用OpenCV库
android·opencv
紫_龙16 小时前
window 维护多版本Android studio
android·ide·android studio