阿里P8大佬亲自讲解,大厂Android面试总结+详细解答

简介: 阿里P8大佬亲自讲解,大厂Android面试总结+详细解答
一、关于Handler面试那些问题

1、Handler Looper Message 关系是什么?

2、Messagequeue 的数据结构是什么?为什么要用这个数 据结构?

3、如何在子线程中创建 Handler?

4、Handler post 方法原理?

5、Android 消息机制的原理及源码解析

6、Android Handler 消息机制

7、Android 消息机制

07ea7685c9a859b4f9205010fc31827c_format,png.png

二、关于Activity面试那些问题

1、启动模式以及使用场景?

2、onNewIntent()和 onConfigurationChanged()

3、onSaveInstanceState()和 onRestoreInstanceState()

4、Activity 到底是如何启动的

e571c5e3463893bc497afd1044e2a888_format,png.png


三、关于Fragment面试那些问题

1、Fragment 生命周期和 Activity 对比

2、Fragment 之间如何进行通信

3、Fragment 的 startActivityForResult

4、Fragment 重叠问题

5、Fragment 重叠, 如何通信

eecc23524b7846213f284cef892153e1_format,png.png


四、关于Service面试那些问题

1、进程保活

2、Service 的运行线程(生命周期方法全部在主线程)

3、Service 启动方式以及如何停止

4、ServiceConnection 里面的回调方法运行在哪个线程?

5、startService 和 bingService 区别

6、Android 进程保活的一般套路

78f8fadcdfb4328de84acd4bf778fb3b_format,png.png


五、关于Android 布局优化面试那些问题

1、什么情况下使用 ViewStub、include、merge?

2、他们的原理是什么?

3、布局优化神器 include 、merge、ViewStub 标签详解

4、Android 布局优化之 ViewStub、include、merge 使用 与源码分析

4ddd346673989e6f4d981d4bc2c3ab4e_format,png.png

六、关于BroadcastReceiver面试那些问题

1、注册方式,优先级

2、广播类型,区别

3、广播的使用场景,原理

4、安卓广播的底层实现原理


94c5ca1f2a7337f1ac40eb939cf32a03_format,png.png

七、关于AsyncTask面试那些问题

1、AsyncTask 是串行还是并行执行?

2、AsyncTask 随着安卓版本的变迁


八、关于Android 事件分发机制面试那些问题

1、onTouch 和 onTouchEvent 区别,调用顺序

2、dispatchTouchEvent , onTouchEvent , onInterceptTouchEvent 方法顺序以及使用场景

3、滑动冲突,如何解决

4、Android ViewGroup 事件分发机制

0f58fd0602d3c9202dd79ac0069121e6_format,png.png


九、关于Android View 绘制流程面试那些问题

1、简述 View 绘制流程

2、onMeasure, onlayout, ondraw 方法中需要注意的点

3、如何进行自定义 View

4、view 重绘机制


十、关于Android ANR面试那些问题

1、为什么会发生 ANR?

2、如何定位 ANR?

3、如何避免 ANR?

4、什么是 ANR

cfab353cc8fc39c4685a94c14692c415_format,png.png

十一、关于Android 内存面试那些问题

1、什么情况下会内存泄漏?

2、如何防止内存泄漏?


关于面试的充分准备

一些基础知识和理论肯定是要背的,要理解的背,用自己的语言总结一下背下来。


虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,我能明显感觉到国庆后多了很多高级职位,所以努力让自己成为高级工程师才是最重要的。

好了,希望对大家有所帮助。

相关文章
|
11天前
|
ARouter IDE 开发工具
Android面试题之App的启动流程和启动速度优化
App启动流程概括: 当用户点击App图标,Launcher通过Binder IPC请求system_server启动Activity。system_server指示Zygote fork新进程,接着App进程向system_server申请启动Activity。经过Binder通信,Activity创建并回调生命周期方法。启动状态分为冷启动、温启动和热启动,其中冷启动耗时最长。优化技巧包括异步初始化、避免主线程I/O、类加载优化和简化布局。
28 3
Android面试题之App的启动流程和启动速度优化
|
5天前
|
缓存 网络协议 安全
Android网络面试题之Http基础和Http1.0的特点
**HTTP基础:GET和POST关键差异在于参数传递方式(GET在URL,POST在请求体),安全性(POST更安全),数据大小限制(POST无限制,GET有限制),速度(GET较快)及用途(GET用于获取,POST用于提交)。面试中常强调POST的安全性、数据量、数据类型支持及速度。HTTP 1.0引入了POST和HEAD方法,支持多种数据格式和缓存,但每个请求需新建TCP连接。**
20 5
|
2天前
|
SQL XML Java
Android 这 13 道 ContentProvider 面试题,你都会了吗?
Android 这 13 道 ContentProvider 面试题,你都会了吗?
|
2天前
|
安全 Android开发 Kotlin
Android面试题之Kotlin协程并发问题和互斥锁
Kotlin的协程提供轻量级并发解决方案,如`kotlinx.coroutines`库。`Mutex`用于同步,确保单个协程访问共享资源。示例展示了`withLock()`、`lock()`、`unlock()`和`tryLock()`的用法,这些方法帮助在协程中实现线程安全,防止数据竞争。
8 1
|
3天前
|
安全 网络协议 算法
Android网络基础面试题之HTTPS的工作流程和原理
HTTPS简述 HTTPS基于TCP 443端口,通过CA证书确保服务器身份,使用DH算法协商对称密钥进行加密通信。流程包括TCP握手、证书验证(公钥解密,哈希对比)和数据加密传输(随机数加密,预主密钥,对称加密)。特点是安全但慢,易受特定攻击,且依赖可信的CA。每次请求可能复用Session ID以减少握手。
13 2
|
9天前
|
缓存 JSON 网络协议
Android面试题:App性能优化之电量优化和网络优化
这篇文章讨论了Android应用的电量和网络优化。电量优化涉及Doze和Standby模式,其中应用可能需要通过用户白名单或电池广播来适应限制。Battery Historian和Android Studio的Energy Profile是电量分析工具。建议减少不必要的操作,延迟非关键任务,合并网络请求。网络优化包括HTTPDNS减少DNS解析延迟,Keep-Alive复用连接,HTTP/2实现多路复用,以及使用protobuf和gzip压缩数据。其他策略如使用WebP图像格式,按网络质量提供不同分辨率的图片,以及启用HTTP缓存也是有效手段。
29 9
|
4天前
|
缓存 网络协议 Android开发
Android网络面试题之Http1.1和Http2.0
HTTP/1.1 引入持久连接和管道机制提升效率,支持分块传输编码和更多请求方式如PUT、PATCH。Host字段指定服务器域名,RANGE用于断点续传。HTTP/2变为二进制协议,实现多工处理,头信息压缩和服务器推送,减少延迟并优化资源加载。HTTP不断发展,从早期的简单传输到后来的高效交互。
14 0
Android网络面试题之Http1.1和Http2.0
|
3天前
【年前最后一波装逼】记一次阿里面试,我是如何用一行代码解决约瑟夫环问题的
【年前最后一波装逼】记一次阿里面试,我是如何用一行代码解决约瑟夫环问题的
|
8天前
|
Java Android开发 Kotlin
Android面试题:App性能优化之Java和Kotlin常见的数据结构
Java数据结构摘要:ArrayList基于数组,适合查找和修改;LinkedList适合插入删除;HashMap1.8后用数组+链表/红黑树,初始化时预估容量可避免扩容。SparseArray优化查找,ArrayMap减少冲突。 Kotlin优化摘要:Kotlin的List用`listOf/mutableListOf`,Map用`mapOf/mutableMapOf`,支持操作符重载和扩展函数。序列提供懒加载,解构用于遍历Map,扩展函数默认参数增强灵活性。
14 0
|
9天前
|
设计模式 SQL JavaScript
java面试宝典全套含答案
java面试宝典全套含答案