写点什么

2019- 金九银十多家 BAT 大厂 Android 面试真题锦集干货整理

用户头像
Android架构
关注
发布于: 2 小时前
  • 为什么找工作,自己的优势是什么


####Third:


  • 技术问题不再局限于简历,可能根据简历和回答情况渐进并扩散。

  • 感觉各个技术面试官之前并没有沟通,可能会问到类似的问题

  • 介绍下自己主要负责的工作

  • Activity 的生命周期有哪些,知道 onRestart 么,介绍下

  • savedInstanceState 知道么,干什么用的,什么时候有值,什么时候为空,平时是怎么用的

  • View 绘制熟悉么,介绍下,能说下是实现原理么?

  • 平时用过什么开发工具,分析工具?

  • ANR 是怎么回事?怎么查?Service 会引起 ANR 么?

  • Activity 的启动模式有哪些?栈里是 A-B-C,先想直接到 A,BC 都清理掉,有几种方法可以做到?这几种方法产生的结果是有几个 A 的实例?

  • 有什么工具可以看到 Activity 栈信息么?多个栈话,有方法分别得到各个栈的 Activity 列表么

  • 都熟悉哪些命令?知道怎么用命令启动一个 Activity 么?

  • SharedPrefrences 的 apply 和 commit 有什么区别

  • java 里带 $的函数见过么,是什么意思

  • MD5 是加密方法么,Base64 呢

  • 有博客和 github,主要是写的什么?有哪些关注

  • android 8.0 有哪些新特性

  • 差不多就这些吧。。最后每个面试官都会让你问他问题。


最近面试被怼了?缺面试题刷提升自己吗?


点击:


Android 学习,面试文档,视频收集大整理


来获取学习资料提升自己去挑战一下 BAT 面试难关吧



###某公司


  • glide 缓存策略?同一个图片跟 size 有关么

  • android 中的动画有哪些

  • View 事件传递机制

  • 界面卡顿怎么排查和优化?

  • Fragment 的 replace 和 end??的区别?

  • MVP,MVVM,MVC 解释和实践

  • 项目之外的,对技术的见解,拓展知识


####二面:


  • 微信跳一跳外挂怎么实现,检测怎么做的?

  • 一张纯色背景下怎么有效检测各个矩形?

  • 对接的 so 算法了解么,有接触过相关的库么?

  • 三个算法题选一个并写出测试用例:打印 n-m 之间所有的素数;计算 n-m 之间 1 出现的次数;指定数字序列的排序;

  • android api 层的源码熟悉哪些?解释一下

  • ACTION_CANCEL 什么时候触发,触摸 button 然后滑动到外部抬起会触发点击事件吗,在+ + 滑动回去抬起会么

  • 怎么处理嵌套 View 的滑动冲突问题

  • 热修复相关的原理,框架熟悉么

  • gradle 打包流程熟悉么

  • 任意提问环节:其实可以问之前面试中遇到的问题:比如,多模块开发的时候不同的负责人可能会引入重复资源,相同的字符串,相同的 icon 等但是文件名并不一样,怎样去重?


###NetBase:


  • Canvas 的底层机制,绘制框架,硬件加速是什么原理,canvas lock 的缓冲区是怎么回事

  • surfaceview, suface,surfacetexure 等相关的,以及底层原理

  • android 文件存储,各版本存储位置的权限控制的演进,外部存储,内部存储

  • 上层业务 activity 和 fragment 的遇到什么坑??页面展示上的一些坑和优化经验

  • 网络请求的开源框架:OKHttp 介绍,写过拦截器么


###Netbase:AI


  • 数据层有统一的管理么,数据缓存是怎么做的,http 请求等有提供统一管理么?

  • 有用什么模式么,逻辑什么的都在 Activity 层?怎么分离的

  • 如果用了一些解耦的策略,怎么管理生命周期的?

  • 有什么提高编译速度的方法?

  • 对应用里的线程有做统一管理么?

  • jni 的算法提供都是主线程的?是不是想问服务类的啊

  • 边沿检测用的啥?深度学习相关的有了解么?

  • 上线后的 app 性能分析检测有做么


###yz


  • 进程间通信方式?Binder 的构成有几部分?

  • HttpClient 和 HttpConnection 的区别

  • View 的事件传递机制

  • MVC,MVP,MVVM 分别是什么?

  • Android 中常用的设计模式,说三个比较高级的?

  • 内存优化,OOM 的原因和排查方法

  • 想改变 listview 的高度,怎么做

  • Https 是怎么回事?

  • 除了日常开发,其他有做过什么工作?比如持续化集成,自动化测试等等



###滴滴


  • ActivityA 跳转 ActivityB 然后 B 按 back 返回 A,各自的生命周期顺序,A 与 B 均不透明。

  • Synchronize 关键字后面跟类或者对象有什么不同。

  • 单例的 DCL 方式下,那个单例的私有变量要不要加 volatile 关键字,这个关键字有什么用

  • JVM 的引用树,什么变量能作为 GCRoot?GC 垃圾回收的几种方法

  • ThreadLocal 是什么?Looper 中的消息死循环为什么没有 ANR?

  • Android 中 main 方法入口在哪里

  • jdk1.5?SparseArray 和 ArrayMap 各自的数据结构,前者的查找是怎么实现的,与 HashMap 的区别

  • Runnable 与 Callable、Future、FutureTask 的区别,AsyncTask 用到哪个?- AsyncTask 是顺序执行么,for 循环中执行 200 次 new AsyncTask 并 execute,会有异常吗

  • IntentService 生命周期是怎样的,使用场合等

  • RecyclerView 和 ListView 有什么区别?局部刷新?前者使用时多重 type 场景下怎么避免滑动卡顿。懒加载怎么实现,怎么优化滑动体验。

  • SQLite 的数据库升级用过么

  • 开放问题


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


:如果提高启动速度,设计一个延迟加载框架或者 sdk 的方法和注意的问题。


  • Scroller 有什么方法,怎么使用的。

  • 分享下项目中遇到的问题

  • webwiew 了解?怎么实现和 javascript 的通信?相互双方的通信。@JavascriptInterface 在?版本有 bug,除了这个还有其他调用 android 方法的方案吗?

  • ReactiveNative 了解多少

  • JNI 和 NDK 熟悉么?Java 和 C 方法之前的相互调用怎么做?


###几点建议


1、简历要如实写,相关的知识点一定要烂熟于心。2、基础扎实,android 和 java 相关的知识树网上有很多资料,看过但让你讲出来未必能说的好。3、提前总结,你还擅长什么其他技术?这种开放问题要看知识面了。4、学会提问,你有什么问题要问我吗?这种礼貌性问题也是一个了解对方的好机会。5、良好的心里素质,无论遇到什么情况,面试官迟到、面试官态度冰冷说话不客气、质疑你的回答等等各种问题都不要慌也不要排斥,一定要沉住气,耐心积极的思考并回答对方的提问。6、推荐几本书,也是好几次面试后发现里面涵盖了大部分答案。《Android 开发艺术探索》《Android 源码设计模式-解析与实战》《Android 进阶之光》《深入理解 Java 虚拟机》《Android 音视频开发》《Android 进阶解密》多看几遍。


以上面试中问到的题目基本上都可以在其中找到答案,所以做准备是很重要的,但技术是一点点积累的,就算你全会背了,面试过了,真正等到工作的时候还是会捉襟见肘的,所以踏实点吧骚年。


而且大厂的面试流程比较长,面试是一场全面大考验,如果想换个工作,最好提前充分准备。

文末

面试:如果不准备充分的面试,完全是浪费时间,更是对自己的不负责!

金九银十面试季,赶快去为自己的面试做足准备吧!


不管怎么样,不论是什么样的大小面试,要想不被面试官虐的不要不要的,只有刷爆面试题题做好全面的准备,当然除了这个还需要在平时把自己的基础打扎实,这样不论面试官怎么样一个知识点里往死里凿,你也能应付如流啊~


快来获取学习资料提升自己去挑战一下 BAT 面试难关吧!


Android 学习,面试文档,视频收集大整理



用户头像

Android架构

关注

还未添加个人签名 2021.10.31 加入

还未添加个人简介

评论

发布
暂无评论
2019-金九银十多家BAT大厂Android面试真题锦集干货整理