客户端(安卓)面试,看这一篇就够了!

叠个甲:不是劝进客户端,客户端确实不如后端,但是既然找不到大厂后端选择走客户端这条路了,那也需要好好准备,剩下就看命了。

面试无非几种情况,一是零基础,二是有相关的实习经历,三是本身就是学安卓的(那也没必要看了相信你都已经滚瓜烂熟了)

首先是零基础,也就是别的方向(比如java后端)去转。因为以前安卓本身就是用java写的,后面才用kotlin写,并且两者是兼容的,会java的话上手kotlin很快。一般是找实习的时候居多,这种情况你的简历应该是不包含任何客户端相关的东西的,面试官默认你是一张白纸,这个时候是最容易找到客户端实习的,面试官会针对你简历去问,正常准备就行。一般就是问java+网络+操作系统+简历上的项目,mysql、redis、spring框架之类的东西因为客户端涉及不到所以不会问。(不排除问的可能,只能说概率非常小)

本文主要针对第二种情况,也就是有了客户端实习经历后,秋招打算继续找客户端的岗位,实习期间主要还是面向完成任务,很多理论是用不到的,但是有了实习经历后,秋招面试官就会去问你安卓相关的八股。一般就问实习+java/kotlin+网络+操作系统+安卓,简历上写的后端项目不会再问了。

我面了26场技术面试,其中问了安卓八股的有14场,发现问来问去就那么多的知识点。我室友每次在边上帮我记录面经,后面他说安卓的八股他都会了,下次也能去面面了。

非常高频!!!

四大组件:能说是哪四个就行,基本只问activity,另外三个几乎不问

activity的生命周期 7次

activity的启动模式 4次

安卓线程间通信方式(handler)6次

安卓进程间通信方式(binder)5次

view的绘制流程 4次

触摸事件的传递 4次

下面只问过一次的,很多是从上面的高频问题中引申出来的:

activityA启动后打开activityB,两个activity的状态经历了哪些周期?

可以在子线程里面刷新UI吗?如果我非要在子线程里刷新了UI呢?会怎么样?会抛出什么异常?

ANR是什么?ANR产生的根本原因是什么?多久会出现这个异常?所有的情况都是 5s 吗?Service里面也是5s吗?

application的oncreate和activity的oncreate有什么区别?

Ibinder了解吗?

一个点击事件点击结束后是怎么被销毁的?

looper的睡眠机制对应linux的哪个操作?

looper最多能开几个线程?

handler的一个postDelay()方法知道吗?

如果创建了两个handler,如何知道哪个消息对应哪个handler?

上下滑动事件和左右滑动事件的冲突如何处理?

recyclerView了解吗?它是如何复用视图的?

activity和fragment之间是如何进行通信的?

以上就是整个秋招面试过程中我被问到的所有关于安卓的问题,如果觉得对你有帮助的话,可以给我送个小花

#牛客激励计划#

全部评论
感谢答疑解惑
1 回复 分享
发布于 01-16 15:33 陕西
如果是前端被捞到客户端这种情况呢
点赞 回复 分享
发布于 04-24 01:58 广东
佬,您好,我是属于你文中安卓零基础的(第一种)情况,请问有没有什么适合写到简历里的安卓入门项目吗?可以推荐几个吗?感谢
点赞 回复 分享
发布于 03-14 19:00 江苏
点赞 回复 分享
发布于 03-10 13:20 江苏
客户端六年了,觉得客户端挺好的呀。不用24小时 on call。
点赞 回复 分享
发布于 02-21 09:56 广东
m
点赞 回复 分享
发布于 01-21 12:36 广东
点赞 回复 分享
发布于 01-17 10:56 北京

相关推荐

04-30 14:59
吉首大学 Java
网上关于这个岗位的面经较少,这里也是简单发一下吧,给各位求职的同学做个参考(我之前面试前没找到面经),先将本人情况介绍一下,普本科班,一战科软下岸人,2个国奖,挑战杯互联网+校一等奖这#牛客AI配图神器#些情况,大一到考研前一直在实验室写项目做开发,。一面:面试官刚进来都没有让我自我介绍,直接问我简历中的项目,然后简单问了一些八股,Java的基础数据类型和引用数据类型的区别,然后你开发中的id后端是用什么数据类型接收的,还有就是缓存穿透击穿这些问题,基本上引出的都是场景题,总结来说就说八股结合对应的场景,八股的话基本上是根据你的简历上出现的,其中也闲聊了很多,感觉像我老师一样教我问题,整个面试过程氛围极其轻松,也有我没答出来或者答错的,他也是很细心的跟我讲,让我自己意识到自己讲错了,总体来说,好评,需要对自己开发过程中的一些问题和简单八股以及对应的场景熟悉,能够扯出来才行。我问的,对我影响怎么样,是否有二面三面这些情况,是否需要提前实习二面:当时一面后,第二天hr约二面,由于我那个时间学校要求毕业答辩,我推迟到很晚。面试时,面试官先让自我介绍,然后对我简历上的项目进行一个详细的询问,你做了哪些,遇到哪些问题,怎么解决,我项目中有2个项目,一个是开源项目,一个是普通的项目,,询问的基本上是我怎么实现这些功能,你的职责是什么,总体来说我基本上答出来了,有些不是我参与的功能内容我并未回答出来,其中也会有对其这个业务场景所延申出来的场景题。还有问到我职业规划,是否二战,倾向于中间件这些还是说深入学习Java这种。我询问了面试官部门的业务,面试官也很详细的讲述了给我,是否有三面(面试官说下步应该就是hr面了)综上所述,面试基本上项目场景题,八股文也是掺杂在项目中,需要对自己的项目极其熟悉,我对2个面试官都询问了对我的印象,他们都是觉得我表达能力很好,虽然没有实习,但是也是有经验的那种,二面的面试官跟我说二面的结果5.5后出了所以我也不知道我是否通过
点赞 评论 收藏
分享
评论
39
100
分享

创作者周榜

更多
牛客网
牛客企业服务