金九银十,你需要的不仅仅只是大厂面试题,记得把每一次面试当做经验积累!
主线程的 Looper 死循环为什么不会导致 ANR?
Android 动画的实现方式。
项目中有没有用到组件化,如何实现组件化。
Hybrid 开发中 Android 和 H5 的交互有哪些方式。
项目是怎样的架构,为什么这么搭建。
某物流公司的面试题;
本地广播和全局广播的区别,本地广播的实现原理。
常见第三方框架及其实现原理。
SQLite 数据库操作。
Http 请求中包含哪些内容,上传文件和发起请求的 post 请求的区别。
线程池有哪几种,如何运用。
设计实现大批量数据上传的方式。
MVC,MVP,MVVM 架构的区别。
如何解决 Handler 导致的内存泄漏。
进程间通信的方式。
某厂电商及物流岗位的面试题:
View 的绘制流程。
实现延时任务的几种方式,postDelay,AlarmManager,TimerTask 的区别。
做过哪些优化性能的工作?如何考量优化的成果。
http 和 http2.0,以及 https 的不同。
Art 虚拟机和 Dalvik 虚拟机。
三级缓存的原理。
LruCache 算法的原理。
项目中用到了哪些设计模式,Android 源码中用到设计模式的场景。
Java8 有什么新特性。
Java 类如何加载,类加载的过程。
页面卡顿如何解决,viewHolder 起什么作用。
如果有大数据量网络请求,该如何优化
另某厂电商 KL 应用岗位面试题;
在浏览器输入网址到打开网页,中间的过程。
如何统计工程的代码量?如何去掉代码注释的影响?
模式匹配
apt ,aop
标签注解的原理
热修复的原理。
线程池的原理,如果核心线程数 5,最大线程数 10,新来的线程会怎样?
如何在服务器接口未准备好的情况下调试接口?
如何抓取 Https 传输的数据?
Android 与 Js 的交互,接口存在的安全隐患及修复
不同方式创建字符串,通过==和 quuals 比较的结果
某 Y 厂音乐多媒体岗位面试题:
对第三方框架的了解。EventBus 可以跨进程通信吗?
Android P 有什么新特性,后台限制策略是通过怎样的 API 来处理的?
HashMap 的原理,hashCode 的作用,重写 equals 为什么要重写 hashCode 方法
Synchronizd 修饰静态方法也修饰了非静态方法,可以在两个线程同时被调用吗?
padding 和 margin 的区别。给固定大小及 wrap_content 的 textView 设置 padding,它的可点击区域会变化吗?
如何自定义 view, Canvas 的作用
onMesure()方法的参数,MeasureSpec 的结构
动画有哪几种?属性动画怎么用,插值器什么作用
讲一下 include,merge 和 viewstub。 viewstub 可以被重复加载吗?在 view 树里是怎样的存在?
对线程的理解,线程同步有哪几种方式
final 关键字的作用,为什么匿名内部类里用到的变量必须是 final 类型的?
handler, Looper, MessageQueue 的关系,这三个可以一对多吗?怎么保证 message 能被其对应的 handler 处理?
触摸事件传递过程。有个竖向滑动的 ViewGroup 里嵌套了横向滑动的 view,如何处理滑动冲突?
onSaveInstanceState 触发的时机。
某母婴平台部分面试题:
自定义 view 时如何刷新布局,invalidate 会改变宽高吗
Java 泛型是伪泛型吗
new Integer(1) == 1 会执行拆箱吗
Looper 无限循环为什么不会造成卡死
组件之间,activity 如何跳转
HTTPS 及其双重检验
继续补充
某高校合作研究机构的面试题:
HashSet 的原理,如何保证元素不重复的
项目中登录密码是怎么加密的
如何保证 HTTP 通信的安全
git 存储的是快照还是差异
aop 代理
了解哪些设计模式,讲解策略模式
泛型是怎么回事,类型擦除发生在什么时候
列出常用的 Linux 操作,如何查看内存占用
某小电商平台:
如何计算 bitmap 占用的内存
内存泄漏都有哪些可能的原因
数据库优化,异步操作数据库会不会导致内存泄漏,怎么解决
MVP,MVVM 模式。
某炒股平台面试题:
自己实现 StringBuffer 类及其 append 方法
如何优化 ListView 的显示
有多个应用都能接收某个 action 广播,如何做到广播只被特定的应用接收到
网络下载图片并保存到 SD 卡,过程涉及哪些 IO 类
实现 3 秒延时后给 TextView 设置文字。
有哪些措施能加强应用的安全性。
apk 加固的原理。
哪些情境会导致内存不一致
如何检测应用卡顿的原因
主线程要等待几个子线程处理完成后才能继续处理,该怎么实现
某人脸识别平台:
activity 启动过程
BroadcastReceiver 的工作原理
HandlerThread 和 Thread 的区别,HandlerThread 在 Android 中哪些场景用到
普通线程以及线程池里的线程,如何给线程命名,设置优先级
某个工具类的方法,传入了 activity 的回调,怎么解决内存泄漏
Object 类的 clone()是深克隆吗?怎么实现深克隆?
IntentService 是怎么新建线程的?
MVP 模式里,V 是哪些?startService 这样的操作,应该写在 V 里,还是 P 里
补充:
synchronized 的实现原理,和 lock 的区别。
多进程操作文件,怎么解决同步?
CAS 同步方法。
binder 的实现。
插件化的原理。如果自己去设计插件化的框架,怎么设计?注意哪些地方?
第三方框架及其原理。在用第三方框架时有没有做比较,了解项目之外的第三方框架吗?
如何分析 ANR 问题?腾讯 Bugly 这样的框架是什么原理。
JNI 开发,及原理。
Java 反射的原理。
dex, odex 是什么。
Android 系统开机过程。
面向切面编程。
AutomicInteger 的原理。
调用 System.gc()会怎样,系统什么时候会触发 GC。
线程的 sleep 和 wait 的区别。
Google 最新动态,Android 最新变化等。
队列有哪几种。
从点击桌面图标,到 App 启动中间发生了什么。
fragment 生命周期,和 activity 的配合
gilde 加载图片
HandlerThread
Java 集合有哪些?哪些是线程安全的
类的加载及静态变量,成员变量等的初始化顺序。
线程池里的线程是如何复用的
HTTP 请求头,响应都包含哪些内容
activity 的四种启动模式分别在哪些场景会用到
弱引用和软引用的区别,使用场景
线程池里的任务如果发生异常了,会怎样
手写二分查找算法
栈内有个 singleTask 的 activity,再次启动它时,生命周期怎样
设计一个埋点功能模块,应该怎么做?
Java 异常分为哪几类?RuntimeException 包含哪些?
Volley 框架存储请求数据时,key 是什么?
请基于数组实现队列。
评论