• http协议请求头都包括哪些内容?

  • 计算机网络、操作系统、数据结构有系统学习过吗?

  • 后端、web前端、iOS方面有接触过吗?(学过MySQL和一点点Spring)

  • 你看过哪些Android源码?刚刚你提到了Handler,它是用来干嘛的?为什么要有Handler,自己写一个

线程间通信的代码不行吗?你提到了消息队列,它的作用是什么?消息队列和Handler一定要一起使用吗?

  • 算法题

(1)用二分法在排序数组中找到绝对值最小的元素

(2)螺旋输出二维矩阵中的元素(不一定是方阵)

  • 能实习多久?什么时候毕业?什么时候能开始实习?

  • 反问

(1)大厂对于新技术的看法?敏不敏感?(大厂会第一时间学习新技术,但是真正用在项目中需要时间)

(2)鸿蒙的出现会不会抢了Android开发者的饭碗?(不会,移动端之间转行很容易)

腾讯-腾讯游戏


腾讯面试涉及到的范围也很广,甚至问到了C++,也具有一定挑战性的,腾讯面试过程中的感觉就是很多我不太熟悉的知识点都被问到了,甚至是不知道的知识点,但整体面试官给人的体验还不错,一般会提前打电话沟通面试时间。

腾讯一面

50分钟(腾讯会议视频面试)

  • 自我介绍,顺便展示了自己的项目,展示中出现了一个bug(尴尬),面试官问为什么会出现这个bug,

出现bug你会采用什么方式解决(查看log)?如果是企业级应用修复bug,你会怎么做?项目是你自己写的吗?

写了多久?

  • 有用过Java集合类吗(说了ArrayList、LinkedList、HashMap)?说一下它们各自特点和内部的原理?

  • Java中加锁的方式(sychronize和lock)?它们有什么不同?如果是高并发的场景,选哪个比较好,为什么?

  • http协议和tcp协议相关

  • 你项目中用了kotlin,能说一下kotlin相比于Java的优势吗?

  • 你的项目中用了kotlin协程,能说一下协程的概念吗?协程底层实现原理有看过吗?

  • 说一下Android事件分发的过程?

  • View的测量、布局和绘制流程?自定义View需要重写哪些方法?自定义ViewGroup需要重写哪些方法?

区别是什么?为什么有区别?

  • 你有写过自定义控件吗(说了一个树木生长的动画)?怎么实现的?

  • 你项目中用的是okhttp+retrofit,为什么要用okhttp不用官方的httpUrlConnection?okhttp的好处是什么?

retrofit是干什么的?retrofit和rxjava一起用的好处是什么?

提问环节:

(1)您对Google推出的jetpack compose怎么看?(面试官没了解过)

(2)部门用Java还是kotlin?(新业务用kotlin,老的代码用Java维护,并不冲突)

(3)部门加班情况怎样?(早10点→晚8点,挺轻松)

(4)工作情况怎样,会不会天天开会?(一周开一次技术会)面试官又问了我天天几点去实验室,几点走

(5)能转正吗?(面试官也不清楚)

腾讯二面

电话面,20分钟

  • 自我介绍

  • mvvm架构相比于mvp架构的优点是什么

  • 你比较熟悉jetpack的什么组件,它用了什么设计模式?

  • 你对电子竞技的前景怎么看?

  • 你项目中用了kotlin,kotlin相比于Java优势有哪些?

提问

腾讯三面

腾讯会议视频面试(20min)

  • 用腾讯会 《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》无偿开源 徽信搜索公众号【编程进阶路】 议的共享屏幕功能,花了10分钟给面试官介绍项目(模拟器现场演示app的一些业务功能)

  • 你并不是计算机科班出身的,你对本专业就业方向怎么看?你打算把Android开发作为以后的就业方向吗?

  • 你做项目时候感觉对自己最大的提升是什么?

  • 后续在Android方面你打算学习哪些东西?(说了NDK和flutter)

  • 你觉得kotlin相比于Java的优势有哪些?

  • 项目是你自己写的吗?用户量有多少?有没有考虑过版本兼容性相关的问题?项目出现问题你该如何解决?

  • 项目准备用到实际生活中吗?开发完之后你是怎么测试的?

  • 之前有没有过实习经历?

总结:面试官说我的项目经历挺丰富的,但是缺乏深度,需要去公司中体验一下企业级别的项目来提升自己的技术。

美团

美团面试是现场一天面完,技术面试一共两轮,最后有一轮HR面试,回忆起来似乎问的问题不是特别多,但都比较开放,聊的比较深入,技术一面直接打开美团APP聊相关页面设计实现,这种方式还是比较新颖的,二面则是聊项目比较多,问很多项目中具体实现细节。

美团一面

50分钟

  • 你项目中用了MVVM架构,解释一下MVVM架构的思想?

  • 你项目中用了kotlin协程,能说一下协程的概念吗?

  • View层和Model层如何通信(LiveData)?DataBinding有用过吗?原理说一下?

  • https如何保证安全的?加密、证书相关

  • 线程和进程之间的区别?

  • Android进程通信的方式?(共享内存、socket、Binder)它们各自有什么特点?

  • 说一下Java虚拟机垃圾回收算法?

  • 有用过flutter吗,还是只学过原生Android开发?

  • 项目是自己写的吗?

算法题:

(1)leetcode1:两数之和

(2)反转字符串中的单词:给一个字符串"[www.meituan.com](()“,将其变成"com.meituan.www”

美团二面

50分钟,牛客网

  • 算法题:给一个double类型的数num,求它的平方根,要求精度为1e-8。(二分法)

  • 家是哪里的?期望工作的城市有哪些?

  • Java虚拟机垃圾回收机制

  • 学过哪些设计模式?说一下Android哪些地方用到了适配器模式?

  • 看过哪些Android方面的源码?

  • 进程之间通信的方式有哪些?说一下Binder的原理?

  • 对Reactive native感兴趣吗?

  • kotlin相比于Java有哪些优势?

  • 你项目中的app是如何获取到停车场车位信息的?

  • 解释一下kotlin协程?协程和线程之间什么关系?

反问:

(1)团队用Java还是kotlin?(kotlin)

(2)Reactive native和原生Android开发区别?

快手

快手一面

牛客网视频面试,40分钟

  • 自我介绍,开了屏幕共享展示项目

  • 你项目中用了mvvm架构,能说说这个架构的思想吗?你项目中的进度条ProgressBar属于哪一层?处理点击事件的逻辑

应该放在哪一层?进行一次网络请求应该放在哪一层?

  • 你项目用了kotlin,说一下kotlin相比于Java的优势有哪些吗?Java有lambda表达式吗?

  • Java中==和equals的区别?kotlin如何判断两个对象内容相等?判断地址是否相等使用什么关键字?

  • 在Java中重写equals时通常需要连带着一起重写什么方法(hashCode)?为什么?

  • 进程和线程的区别?进程之间资源可以共享吗?线程呢?

  • tcp和udp的区别?什么情况使用tcp,什么情况使用udp?

  • http协议常见状态码有哪些?401是什么意思?405?

  • http和https协议的区别?https中ssl握手的过程?

  • tcp协议3次握手、4次挥手的流程说一下?

  • 数组和链表各自特点是什么?描述一下哈希表的工作原理?

编程题:3个线程,交替打印1到100,即a线程打印1,b线程打印2,c线程打印3,a打印4……

百度

百度是现场面试,一共三面没有HR面,第三面是总监面,兼顾技术面与非技术面试,百度的面试官都比较友好,一面技术问的比较细,二面重项目,三面是聊天居多。

  • HashMap中put一个节点的流程?

  • ThreadLocal作用是什么,用在什么场景?

  • TCP的拥堵机制和流量控制描述一下?

  • http协议三次握手流程说一下?

  • Android事件分发机制描述一下流程?

  • Acticity有哪些启动模式?singleTask详细说一下?

  • Activity生命周期相关的有哪些回调方法?在一个Activity中打开一个新的Activity,原有Activity哪些生命周期

  • 方法会回调?如果打开一个对话框呢?如果对话框是透明的呢?

  • Activity由于屏幕旋转、系统配置发生改变之后如何保证其中内容不丢失?可不可以让Activity不重新创建?

  • 你项目中在二级页面中点赞文章,后退到文章列表中怎么让点赞数加一?

  • 你的医疗物流机器人项目中app如何获取到机器人的速度数据?

  • 静态内部类和非静态内部类的区别?当需要内部类时你更愿意使用静态内部类还是非静态内部类?

  • 你项目中用的网络框架是什么?你还知道有哪些网络框架?为什么要使用okhttp?它的好处是什么?

  • 解释一下动态代理模式?你刚刚提到了retrofit中用了动态代理,能详细说一下吗?

  • 线程同步有哪些方式?

  • 解释一下双亲委托机制?

  • 描述一下View的绘制流程?

  • Handler机制说一下?如何解决Handler内存泄漏问题?

  • 现在有一个UI需求:实现一个柱状图的自定义控件,其中的柱有动画效果,说一下实现的思路?

  • Java垃圾回收机制说一下?新生代老年代都有什么回收算法?

  • Java虚拟机如何判断一个对象是否可以被回收?引用计数法和可达性分析说一下?你刚才提到了gc roots,

  • 有哪些对象可以作为gc roots?

  • 你项目中用了kotlin,谈一谈你使用kotlin之后的感受?

  • 你对自己的评价?优点和缺点是什么?

  • 有没有想过要转别的方向,为什么?

  • 平时都有什么爱好?

  • 在学校期间参加过什么社团?对你有什么帮助?跟社团成员有意见冲突时你会怎么做?

  • 对未来有什么规划?说一下你在毕业之前的学习计划?

  • 在学校遇到最大的挑战是什么?

算法题:

(1)给一个升序链表,举例:1→2→3→3→4→5→6,删除链表中的重复元素(例子中为3)

(2)手写二叉树的层次遍历

(3)手写二分查找算法

(4)找到两个链表的第一个重复节点(说思路)

阿里钉钉


阿里面试很喜欢问源码,优化,原理,涉及到的范围很广,还是具有一定挑战性的,阿里可以去找找内推(笔者实习投递时笔试做的差,本来以为挂了,但可能因为找的内推所以还是给我面试了,后续又加了一轮笔试,校招时也是找的内推直接面试了没有笔试)。

阿里一面

一个小时(电话)

先问了本科、研究生学过什么跟计算机相关的课(c、微机原理、其他自学)

  • 浏览器输入网址后整个流程

  • tcp、http协议相关;http1.1和2.0区别

  • 堆排序的过程

  • Java单例有几种方式

  • 静态方法同步和普通方法同步的区别

  • 线程池7大参数、工作原理

  • 点击手机桌面应用图标后发生了什么(应用程序启动流程、Activity启动流程,没看过源码,没答上来)

  • View三大流程说了一下,流式布局FlowLayout怎么实现的

  • retrofit原理(没看过,只说了动态代理+注解),看过okhttp源码,讲了一下okhttp的工作原理(分发器、拦截器,讲了细节)

  • 聊了项目(讲了好久),几个方面如下:

(1)项目中用了kotlin协程,于是问了协程的相关理念,面试官可能觉得说的不太全,就给补充了一下。

然后说协程这样的新技术国外有人用,国内用的很少(因为使用协程会改变老项目原有网络架构,对于新项目

可以使用,想要取代老项目比较困难)。

(2)如果用户反应app有问题,该怎么解决?回答网络抓包,面试官说大型项目不可能通过抓包来找问题,后来

经过暗示,正确做法应该是生成日志文件并提交到服务器。

(3)聊了项目中登录相关的业务怎么实现的(将服务器响应的token持久化并添加到请求头)。

11、提问环节。问了面试官kotlin在企业应用中是否有用到,面试官说由于Java和kotlin并不冲突,因此在项目中是共存的。

阿里二面

一个小时(电话)

  • 聊了研究生、本科阶段得过哪些奖,做过哪些项目或者参加过哪些比赛。具体问了本科参加过的一个水中

【Android校招】六家大厂一起发难相关推荐

  1. 【Android校招】六家大厂一起发难,android物联网开发从入门到实战源码

    2.kotlin相比于Java好处是什么?kotlin对空指针异常是如何处理的?let.with.apply的适用场景? 3.Java异常机制.Error能捕获到吗? 4.我项目中账号密码是保存在本地 ...

  2. 凭这份Java面试宝典,我成功拿到阿里、腾讯、百度、字节等六家大厂offer!

    前言 不论是校招还是社招都避免不了各种面试,如何去准备面试就显得格外重要. 现在很多小伙伴在为社招或跳槽做准备,最近小编也常常在刷面试题,发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理 ...

  3. android模拟器 费电,2020哪个安卓模拟器好用流畅?最新常用六家模拟器跑分对比...

    原标题:2020哪个安卓模拟器好用流畅?最新常用六家模拟器跑分对比 现在安卓模拟器软件常用的就只有六款了,相比较之前有N多款安卓模拟器的时候,安卓模拟器的数量已经减少了非常的多.目前用户常用的这六款安 ...

  4. Android开发六年收获阿里offer定级P7,多亏在阿里P8师兄给的攻略、面试技巧以及学习笔记!!!

    前言 又到了每年的毕业季,应届毕业生在找工作过程对于简历设计和面试技巧有一定的欠缺,这对于求职是比较重要的两个因素,因此掌握一定的面试技巧对于找互联网技术岗位的工作帮助非常大.本篇文章给大家分享一波职 ...

  5. android api版本 闪退_经验分享:从事 Android 开发六年,我学到的那些事

    你的代码质量应该随着经验的增加而提高,在本文作者基于 Android 开发者六年间,其都学到了什么? 以下为译文: 六年来,我为多家公司编写过各种应用程序.你编写代码或处理代码库的文化和方式会随着你的 ...

  6. 8家大厂SSP offer的清华学长谈算法岗是否人间地狱(送七本学长手写iPad笔记)...

    点击上方,选择星标或置顶,每天给你送上干货 作者 | 对白 出品 | 对白的算法屋 编者寄语: 本文看完,相信对你求职算法岗会有一番新的认识. 大家好,我是对白. 之前一直在坚持输出着原创技术文章,同 ...

  7. 从事 Android 开发六年,我学到的那些事!

    你的代码质量应该随着经验的增加而提高,在本文作者基于 Android 开发者六年间,其都学到了什么? 作者 | Mrudula 译者 | 弯月,责编 | 屠敏 出品 | CSDN(ID:CSDNnew ...

  8. 8家大厂SSP offer的清华学长谈算法岗是否人间地狱(送七本学长手写iPad笔记)

    作者 | 对白 出品 | 对白的算法屋 编者寄语: 本文看完,相信对你求职算法岗会有一番新的认识. 大家好,我是对白. 之前一直在坚持输出着原创技术文章,同时也在忙于校招内推**(已内推2000+人) ...

  9. 工作两年,Java社招岗位,阿里,头条等多家大厂面经出炉

    (尊重劳动成果,转载请注明出处:https://yangwenqiang.blog.csdn.net/article/details/105317442冷血之心的博客) 前言 给大家说个误区吧,好多同 ...

最新文章

  1. 源恩教育计算机,源恩计算机二级
  2. linux源码安装必备条件,玩转Linux必备的金钥匙之源码安装mysql
  3. lambda 延迟执行_Java Lambdas和低延迟
  4. 按120分计算成绩 mysql_Mysql实用教程试卷B.doc
  5. C++工作笔记-对|,这些位运算的进一步认识
  6. 【C++基础学习】C++中union结构
  7. OpenCV——解决使用rectangle()函数时出现“TypeError: function takes exactly 4 arguments (2 given)”错误
  8. 看陈广老师c#参考视频总结(第三篇)
  9. MyBatis工作流程及配置
  10. Python编写三级目录(升级版)
  11. 随机效应估算与固定效应估算_面板数据固定效应 vs. 随机效应
  12. android内存dump分析,闭眼能敲,Android内存分析command
  13. 5个视频素材网站推荐
  14. STM32F103C8T6串口通信
  15. 光致变色染料的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  16. 智慧交通怎样利用科技打造一个“最强大脑”
  17. 几种抽奖方式之轮盘抽奖
  18. CTSC2016时空旅行
  19. 系统集成项目应怎样管?本文经验值得借鉴
  20. Linux 静态链接库与动态链接库之一:静态链接库生成及使用

热门文章

  1. IE低版本常见的兼容问题解决
  2. SparseIntArray用法
  3. javaweb项目高并发处理
  4. 高数 limx→0[cos(sinx)-cosx]/(1-cosx)sinx.sinx
  5. 学习Java,达到什么程度,才可以出去找实习工作?
  6. 互联网电影院升级带来3D+VR“奇妙”新体验
  7. git 报错:解决拒接接入问题
  8. DDI市场指南2014
  9. LLVM pre-build binaries 配置路径
  10. 账号降权限流,几天的辛苦都白费了,不用担心几个技巧让你快速恢复推荐量!