工作两年裸辞备战一个多月收割 offer,一二线互联网公司 Android 面试题汇总
EventBus 作用,实现方式,代替 EventBus 的方式
Android 中开启摄像头的主要步骤
网易
集合
concurrenthashmap
volatile
synchronized 与 Lock
Java 线程池
wait/notify
NIO
垃圾收集器
Activity 生命周期
AlertDialog,popupWindow,Activity 区别
小米
String 为什么要设计成不可变的?
fragment 各种情况下的生命周期
Activity 上有 Dialog 的时候按 home 键时的生命周期
横竖屏切换的时候,Activity 各
种情况下的生命周期
Application 和 Activity 的 context 对象的区别
序列化的作用,以及 Android 两种序列化的区别。
List 和 Map 的实现方式以及存储方式。
静态内部类的设计意图。
线程如何关闭,以及如何防止线程的内存泄漏
360
软引用、弱引用区别
垃圾回收
多线程:怎么用、有什么问题要注意;Android 线程有没有上限,然后提到线程池的上限
JVM
锁
OOM,内存泄漏
ANR 怎么分析解决
LinearLayout、RelativeLayout、FrameLayout 的特性、使用场景
如何实现 Fragment 的滑动
ViewPager 使用细节,如何设置成每次只初始化当前的 Fragment,其他的不初始化
ListView 重用的是什么
进程间通信的机制
AIDL 机制
AsyncTask 机制
如何取消 AsyncTask
序列化
Android 为什么引入 Parcelable
有没有尝试简化 Parcelable 的使用
AIDL 机制
项目:拉活怎么做的
应用安装过程
某海外直播公司
线程和进程的区别?
为什么要有线程,而不是仅仅用进程?
算法判断单链表成环与否?
如何实现线程同步?
hashmap 数据结构?
arraylist 与 linkedlist 异同?
object 类的 equal 和 hashcode 方法重写,为什么?
hashmap 如何 put 数据(从 hashmap 源码角度讲解)?
简述 IPC?
fragment 之间传递数据的方式?
简述 tcp 四次挥手?
threadlocal 原理
内存泄漏的可能原因?
用 IDE 如何分析内存泄漏?
OOM 的可能原因?
线程死锁的 4 个条件?
差值器 &估值器
简述消息机制相关
进程间通信方式?
Binder 相关?
触摸事件的分发?
简述 Activity 启动全部过程?
okhttp 源码?
RxJava 简介及其源码解读?
性能优化如何分析 systrace?
广播的分类?
点击事件被拦截,但是相传到下面的 view,如何操作?
Glide 源码?
ActicityThread 相关?
volatile 的原理发
synchronize 的原理
lock 原理
翻转一个单项链表
string to integer
合并多个单有序链表(假设都是递增的)
其他公司
四大组件
Android 中数据存储方式
微信主页面的实现方式
微信上消息小红点的原理
两个不重复的数组集合中,求共同的元素。
上一问扩展,海量数据,内存中放不下,怎么求出。
评论