前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2019年大厂Android面试题

2019年大厂Android面试题

作者头像
蜻蜓队长
发布2019-04-25 17:23:17
3K0
发布2019-04-25 17:23:17
举报
文章被收录于专栏:Android机动车

t讯地图

  • 算法:非递归实现二叉树前序遍历;
  • 手写:双重检查单例类(其中volatile关键字作用)
  • GreenDao底层实现
  • binder用处和原理
  • messager用处和原理
  • Android中的内存泄露
  • oom原因及如何定位
  • 如何降低程序崩溃率
  • okhttp源码理解,使用拦截器的用处和好处
  • 项目中的难点
  • 组件化、插件化
  • ExoPlayer源码
  • 图片优化,如何压缩、如何缓存

b度

  • 算法:检测字符串是否符合ipv4要求
  • 结合各种启动模式,Activity各种情况下的生命周期
  • 多任务栈情况下的生命周期
  • 多任务栈情况下startActivityForResult和setResult有用吗
  • 同时启动两个Activity,各自生命周期如何执行
  • 同已service,start之后又bind,最后unbind时会执行destroy吗
  • IntentService和HandlerThread源码
  • HashMap线程不安全的体现
  • equals和hashcode的区别
  • 方法的重写和重载
  • 重载时传入泛型不同的list,会有问题吗
  • 泛型通配符的使用,存入本身类对象会出问题吗
  • 同一对象的两个锁,分别执行wait和notify,代码执行顺序
  • 本地广播可以跨进程接受吗
  • 自己设计实现本地广播功能
  • handler源码
  • message的next方法哪些地方调用到(获取下一message、消息池)
  • 延时处理msg时,native层做了什么
  • handler构造中传入callback,该接口的handlerMessage方法的返回值有何用处
  • EventBus中,父类对象和子类对象同时注册,有什么问题
  • EventBus是运行时注解还是编译时注解
  • Dalvik和ART的区别
  • B站弹幕的源码
  • Mediaplayer如何实现音画同步

a奇异

  • Handler的postDealy中的runnable何时添加
  • onSaveInstanceState调用的时机,其中系统保存了什么,与onRestore..是成对执行吗
  • SparseArray和ArrayMap源码和区别
  • 线程池的饱和策略
  • Activity的各种启动模式和flag、对应生命周期
  • okhttp线程池源码
  • runnable和callable区别
  • 处理注解的时机(运行时和编译时)
  • 如何封装播放器
  • 播放器各状态的处理

t条

  • 算法:递增二维数组查找
  • mvc、mvp和mvvm的具体使用和区别
  • mvvm不用databinding如何实现
  • glide和imageloader区别
  • glide如何做到生命周期绑定
  • 安卓中常见的内存泄露
  • 安卓中常见的oom、如何避免
  • merge、include和viewstub的使用
  • 如何实现即使通讯

t探

  • okhttp拦截器的作用和好处
  • 自定义拦截器添加的位置
  • okhttp连接复用原理
  • rxjava各操作符、map和flatmap却别
  • rxjava如何线程调度、原理
  • glide源码
  • 手写实现图片加载
  • ijkPlayer源码
  • 事件分发

w吧

  • fragment的begin..方法在做什么
  • commit和commitAllowStateLoss有何区别
  • LinkedHashMap实现原理(单链表还是双链表)
  • HashMap扩容的具体操作
  • Handler源码,消息轮询会一直进行吗
  • 自定义View,子View决定父View的大小
  • rxJava操作符,map和flatmap的区别
  • volatile操作符的作用
  • tcp三次握手和四次挥手
  • tcp数据丢失怎么处理,滑动窗口
  • 播放器丢帧怎么处理
  • im长连接如何实现
  • okhttp连接复用如何实现
  • jvm内存模型、垃圾回收
  • 如何判断对象是否存活
  • threadLocal作用和原理
  • diskLruCache的使用和源码

m蚁金服

  • 父类static方法能否被子类继承、重写
  • 普通内部类和静态内部类的区别
  • 非安卓方法实现线程之间通信
  • 发生异常时,synchroized和lock的区别
  • jvm内存模型
  • AsyncTask一个对象可以重复执行吗
  • Handler源码
  • handler的poistDealy源码
  • view的绘制流程
  • 执行requestLayout时,draw方法执行吗
  • java和js互调及优化
  • 播放器编码解码
  • 弹幕流的处理
  • 如何做单元测试
  • 编译时和运行时
  • okhttp连接复用原理
  • SQLite批量插入和查询,如何优化
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-04-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Android机动车 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • t讯地图
  • b度
  • a奇异
  • t条
  • t探
  • w吧
  • m蚁金服
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档