2020Android高级开发面试题以及答案整理,持续更新中~

本篇收录了一些大厂面试中经常会遇到的经典面试题,并且我做好了整理分类。虽然今年的金九银十已经过去了,但是可以为明年的金三银四做准备啊,相信每一个跳槽季都有很多的前端开发者蠢蠢欲动,通过对本篇知识的整理以及经验的总结,希望能帮到更多的Android面试者。

好了,那我接下来就开始正文咯。

一、Android 基础
Activity
什么是Activity?
请描述一下Activity 生命周期
常见的Activity类型有FragmentActivitiy,ListActivity,TabAcitivty等。请描述一下Activity 生命周期
如何保存Activity的状态或者(Activiy 重启怎么保存数据?)
两个Activity之间跳转时必然会执行的是哪几个方法?
横竖屏切换时Activity的生命周期(★★★★)
如何将一个Activity设置成窗口的样式
如何退出Activity?如何安全退出已调用多个Activity的Application?
Activity的四种启动模式,singletop和singletask区别是什么?一般书签的使用模式是singletop,那为什么不使用singletask?
Android中的Context, Activity,Appliction有什么区别?(★★)
两个Activity之间传递数据,除了intent,广播接收者,content provider还有啥?
Context是什么?,一个应用有多少个Context(2019.5.5)(★★)
activity 之间还有 activity 和 service 之间如何传值, 可以传图片吗?


由于文章篇幅限制,不可能将所有面试题以文字形式展示出来,本篇为大家精选了一些面试题,有需要的程序猿(媛)可以点击下方传送门免费获取题目+解析哦

点击免费领取题目+解析PDF
Service
Service是否在main thread中执行, service里面是否能执行耗时的操作?(★★)
Activity怎么和Service绑定,怎么在Activity中启动自己对应的Service?
请描述一下Service的生命周期(★★★)
什么是IntentService?有何优点?(★★★)
BroadcastReceiver 相关
注册方式,优先级
广播类型,区别
广播的使用场景,原理
Android广播动态静态注册
广播源码解析
……
ListView
ListView如何提高其效率?
当ListView数据集改变后,如何更新ListView
ListView如何实现分页加载(★★★★★)
ListView可以显示多种类型的条目吗(★★)
ListView如何定位到指定位置
如何在ScrollView中如何嵌入ListView(★★★★)
ListView中如何优化图片(★★)
ListView中图片错位的问题是如何产生的(★★★)
如何刷新ListView中单个item的数据,不刷新整个ListView的数据?
Fragment
Fragment跟Activity之间是如何传值的
描述一下Fragment的生命周期
Fragment的replace和add方法的区别
Fragment如何实现类似Activity栈的压栈和出栈效果的?
Fragment在你们项目中的使用
如何切换fragement,不重新实例化


点击免费领取题目+解析PDF
二、Android 高级
Android中的事件处理
Handler Looper Message 关系是什么?
Messagequeue 的数据结构是什么?
Message 的存储与管理
为什么要用Messagequeue?
如何在子线程中创建 Handler?
Handler post 方法原理?
Android性能优化
如何对Android应用进行性能分析(★★★★)
性能稳定性是怎么做的?
业务稳定性如何保障
如果发生了异常情况,怎么快速止损?
启动优化是怎么做的?
什么情况下会导致内存泄露(★★)
如何避免OOM异常(★★★★)
Android中如何捕获未捕获的异常(★★★)
ANR是什么?怎样避免和解决ANR(★★★★★)
android应用对内存是如何限制的?我们应该如何合理使用内存?(★★★★)
Android 组件化与插件化
为什么要用组件化?
组件之间如何通信?
组件之间如何跳转?
Android 插件化和热修复知识梳理
为什么要用组件化


Android屏幕适配
屏幕适配方式都有哪些(★★★★★)
屏幕适配的处理技巧都有哪些(★★★★)
dp和px之间的关系(★★)
AsyncTask相关
AsyncTask是串行还是并行执行?
使用AsyncTask的规则
Android 事件分发机制
onTouch和onTouchEvent区别,调用顺序
dispatchTouchEvent, onTouchEvent, onInterceptTouchEvent 方法顺序以及使用场景滑动冲突,如何解决
事件分发机制
事件分发解析
dispatchTouchEvent, onTouchEvent, onInterceptTouchEvent方法的使用场景解析
……


由于文章篇幅限制,不可能将所有面试题以文字形式展示出来,本篇为大家精选了一些面试题,有需要的程序猿(媛)可以点击下方传送门免费获取题目+解析哦

点击免费领取题目+解析PDF
三、其他
Kotlin 相关
从原理分析 Kotlin 的延迟初始化: lateinit var 和 by lazy
Kotlin 里的 Extension Functions 实现原理分析
Kotlin 系列之顶层函数和属性
Kotlin 兼容 Java 遇到的最大的 “坑”
Kotlin 的协程
Kotlin 协程「挂起」的本质
到底什么是「非阻塞式」挂起?协程真的更轻量级吗?
资源混淆是如何影响到 Kotlin 协程的
破解 Kotlin 协程
Flutter 相关
Dart 当中的 「…」表示什么意思?
Dart 是不是单线程模型?是如何运行的?
Dart 是如何实现多任务并行的?
说一下 Dart 异步编程中的 Future 关键字?
说一下 Dart 异步编程中的 Stream 数据流?
Stream 有哪两种订阅模式?分别是怎么调用的?
await for 如何使用?
说一下 mixin 机制?
个人资料
寂寞纠缠
等级:1
文章:0篇
访问:0
排名: 千里之外
上一篇: Android开发工程师常见面试题整理
标签: android、面试题
隐藏