综合自己以前的面试经历,与同事及网友的面试经历与心得
底层类题目:
1,hashmap底层实现原理,怎么样HashMap线程安全及JDK8之后的hashmap改动
https://blog.csdn.net/qq_25673113/article/details/52202074
2,TCP协议内容
https://hit-alibaba.github.io/interview/basic/network/TCP.html
3,Java GC机制,Java内存模块分区和GC机制,GC算法有哪些
https://juejin.im/post/5a15be736fb9a044fc4464d6
4,Android dalvik虚拟机和Art虚拟机的优化升级点
https://juejin.im/post/5a15be736fb9a044fc4464d6
5,可重入锁的实现,公平锁非公平锁都是什么定义?
6,从点击应用图标到进入应用,Android系统都做了哪些工作,期间涉及到的进程切换有哪些?
https://blog.csdn.net/freekiteyu/article/details/79318031
7,说说Binder的大体实现,Binder的大体设计模式
https://juejin.im/entry/589537b82f301e006904eb3e
8,HTTPS是怎么实现的?HTTPS的组成是什么?
9,Handler为什么会发生内存泄漏
10,Finalize机制
11,强引用 弱引用 软引用 虚引用的区别和使用场景
12,进程线程在操作系统中的实现
13,ClassLoader的双亲委托
14,Android中的ClassLoader
Android基础类题目:
1,service启动方式
2,跨进程启动service 以及 AIDL
3,activity的四种启动方式
https://hit-alibaba.github.io/interview/Android/basic/Android-LaunchMode.html
4,recycleView 复用机制
https://mp.weixin.qq.com/s/neXvftUanFP778Uv1wx5lQ
5,Activity启动过程
https://blog.csdn.net/zhaokaiqiang1992/article/details/49428287
6,JNI使用经验
7,Android屏幕渲染机制
8,Android消息机制
9,Android View绘制流程,当一个TextView的实例调用setText()方法后执行了什么
10,Android 线程池的实现原理
11,Activity启动模式,allowReparent的特点和栈亲和性
12,异常生命周期
13,说说你了解的IPC方法
14,怎么控制另外一个进程的View显示
15,广播中怎么进行网络请求
16,Android事件传递流程和OnTouchListener的关系
17,RemoteViews实现和使用场景
18,RecyclerView绘制步骤和复用机制
19,Activity遵循什么设计模式
20,自定义View,ViewGroup注意哪些回调
//www.greatytc.com/p/8d11efb361f7
Android优化类题目:
1,性能优化都有哪些方面
//www.greatytc.com/p/d4c2c62ffc35
https://juejin.im/post/5a0d30e151882546d71ee49e
2,WebView优化
https://tech.meituan.com/WebViewPerf.html?utm_source=tool.lu
3,Android启动优化
4,Android界面性能调优
https://mp.weixin.qq.com/s/s_r05nAKMELOKgYX1kIZvg
热门技术题目:
1,RxJava相关
https://github.com/jiang111/RxJavaApp
https://juejin.im/post/5b0f51166fb9a009fd0e9811
2,react native相关
3,Android Jetpack应用
http://www.infoq.com/cn/news/2018/05/android-jetpack-released
http://developers.googleblog.cn/2018/05/android-jetpack.html
4,热修复的原理,你都了解过哪几种热修复框架
开源项目类:
1,butternknife原理
2,glide与Picasso的区别
3,Atlas的细节以及与small的区别
4,EventBus源码解析,遵循什么设计模式
5,LeakCanary的使用和实现原理
架构类题目:
1,设计模式及在android中的应用
https://www.zhihu.com/question/29575295
2,MVC与MVP与MVVM架构特点与区别
//www.greatytc.com/p/3010760035e0
https://blog.csdn.net/c10WTiybQ1Ye3/article/details/79787116
https://juejin.im/entry/58943f471b69e6005980f79a
3,组件化开发
4,说说你对设计模式的理解,开发过程中主要用到了哪些设计模式?
https://github.com/guiying712/AndroidModulePattern
5,介绍一下你在开发过程中使用到的设计模式
项目经验类:
1,项目中遇到的问题,怎么解决的,启发是什么
2,双指缩放拖动大图
3,客户端网络安全实现
4,Android应用保活
5,对服务器众多错误码的处理(错误码有好几万个)
6,有过跨平台开发经验吗?
7,视频加密,视频组成,播放器原理
疑难问题类:
1,Android Native Crash
2,开发过程中遇到最深刻的BUG是什么
3,当你的开发任务很紧张,你怎么去做代码优化的?
工具类题目:
1,git常用命令
https://gist.github.com/guweigang/9848271
2,gradle配置
http://wuxiaolong.me/2016/03/30/gradle4android1/
//www.greatytc.com/p/e17cece5f80c
3,android debug技巧
https://blog.csdn.net/My_TrueLove/article/details/52240558
算法与数据结构:
1,链表与各种排序
https://hit-alibaba.github.io/interview/basic/algo/Linked-List.html
2,都用过那些常用的数据结构,说说对树的了解?
3,快排写一下,动态规划了解吗?
//www.greatytc.com/p/22d716001dd5
4,冒泡排序的链表实现
5,写个快排
//www.greatytc.com/p/35afe9ca33ad
6,HashMap如果Hash冲突了怎么解决?
7,双线程通过线程同步的方式打印12121212…….
//www.greatytc.com/p/8fdda9733aa6
8,快排 堆排 单例
探讨人生类:
1,怎么和你的同事沟通
2,为什么离职
3,对这几年甚至未来的规划