距离上次跳槽已经过了3年多,突然看到字节的HR来捞。想着自己好久没面了,就打算去试试看。

0. 准备

视频面试,不用去现场真的太赞了。由于项目比较忙,自己又不是特别想跳槽,所以没怎么准备。面试当天看了一篇面经找找感觉。

1. 自我介绍

面试前我以为自己多年老油条是不会紧张的,但是打开了视频开始面试还是难免紧张了起来,感觉脑子都不灵活了。自我介绍又没怎么打过腹稿,导致开始就有点卡壳。不过自己的主要经历是讲出来了。

2. 面试题

接下来就直接开始了,先是问了简历上做的东西,感觉自己答的没什么毛病。下面分享下问的问题和自己的回答。

1.View的事件分发(具体详细)

事件分发我是有跟过源码的,一开始就想从InputMethodService讲起来突出自己。但讲的时候发现很多细节都忘了,只好匆匆介绍起了dispatch、intercept、onTouch这些。

2.内存问题一般如何处理?

讲了下内存泄漏、内存溢出的排查和修复。

3.死锁导致的ANR,如何排查?

这个问题我真的一下子没有get到,就介绍了下ANR。现在我回想过来,应该是想考察我是不是分析过traces.txt文件?从trace文件里可以看出线程的状态,如果死锁了可以看到主线程是block的。

4.插件资源加载如何热修复?

讲了下插件资源加载遇到的ID冲突如何解决。

这里我估计漏了答反射Asset相关的点了,因为他一直问还有什么。我觉得插件反射Asset应该是常识吧,不应该是要考这个。。。

5.讲讲Binder?

回答了一次拷贝的原理。

自己回答的有点乱,这就是没有准备的下场,明明脑子里架构图都出来了,但是表述的时候卡壳了。

6.ConstraintLayout 如何减少布局层级的?

答:通过各个View之间的约束关系来做,不像LinearLayout这种定死了布局方向。

面试官好像不是很满意。

7.Android如何加载长图?

我回答是:只加载需要显示的部分,剩余的部分按需加载。

面试官显然不满意,想要问细节。

我不会。。。

这个在博客中看到过,系统有提供相关类来处理,但是我确实没有实践过。没有答好。

8.算法

https://www.nowcoder.com/questionTerminal/2569018b80044c4fab95b4d6752fbccf?

算法是我的弱项,又好久没有刷题了,这道小算法题愣是卡了我好久。有点尴尬

3. 总结与反思

很多基础的知识点都没有复习,没有在脑子里过一遍,导致面试的时候表述不明确。很多细节也是忘记了,不敢瞎答。

算法还是要加强,多做题,主要是坚持,保留这个习惯才好。

面试考察的是平时的积累,有些问题是我平时处理以及解决过的,但面试过程中却不能很好的把自己的解决方案表达出来。看来我平时的总结还是不够,遇到问题解决后没有再好好归纳,很快就忘记了。以后要多多加强,分析过的问题最好是整理输出博客,并时时温习。

Android面试-字节一面的更多相关文章

  1. 5年Android程序员面试字节跳动两轮后被完虐,请查收给你的面试指南

    大家应该看过很多分享面试成功的经验,但根据幸存者偏差的理论,也许多看看别人面试失败在哪里,对自己才更有帮助. 最近跟一个朋友聊天,他准备了几个月,刚刚参加完字节跳动面试,第二面结束后,嗯,挂了- 所以 ...

  2. 一周内被程序员疯转3.2W次,最终被大厂封杀的《字节跳动Android面试手册》!

    一眨眼又到金三银四了,不知道各位有没有做好跳槽涨薪的准备了呢? 今天的话大家分享一份最新的<字节跳动Android面试手册>,内容包含Android基础+进阶,Java基础+进阶,数据结构 ...

  3. Android面试总结 (转)

    1. 下列哪些语句关于内存回收的说明是正确的? (b) A. 程序员必须创建一个线程来释放内存 B. 内存回收程序负责释放无用内存 C. 内存回收程序允许程序员直接释放内存 D. 内存回收程序可以在指 ...

  4. Android面试题目及其答案

    转自:http://blog.csdn.net/wwj_748/article/details/8868640 Android面试题目及其答案 1.Android dvm的进程和Linux的进程, 应 ...

  5. Android面试题目2

    1. 请描述下Activity的声明周期. onCreate->onStart->onRemuse->onPause->onStop->onRestart->onD ...

  6. 月薪20k+的Android面试都问些什么?(含答案)

    金九银十跳槽季接近尾声了,可是今年由于疫情的影响仍然不太好找工作,相信大家肯定急需一套Android面试宝典,下面就分享给大家我珍藏已久的Android高阶面试宝典,供大家学习 ! 1.自定义Hand ...

  7. 30K入职腾讯,全靠这份606页的Android面试指南

    前言 光阴似箭,日月如梭,时间真的过得飞快. 加上实习,从事 Android 开发,差不多有 5 年了.在上家公司职务.薪酬感觉已经到达了天花板,没有上升的余地.而且在这家公司过于安逸了,想换个有挑战 ...

  8. Android面试中多说这么一句话,薪水直接涨5k

    小鱼同学最近很难受,明明获得了人人羡慕的大厂Offer,走在路上都能被熟人祝贺,学弟学妹争着抢着求他进行经验分享. 但有件事一直让他很介意.其实这件事起因很简单,是关于这份Offer的薪资问题,面试的 ...

  9. Android面试一天一题(1Day)

    写在前面 该博客思路源于在简书看到goeasyway博主写的Android面试一天一题系列,无copy之意,仅为让自己总结知识点,成长一点点.先感谢各位大神的无私分享~! 关于题目,大部分则出自And ...

  10. 【Android面试】Android面试题集锦 (陆续更新)(最新2012-6-18) eoe上看到的

    ===============eoeAndroid社区推荐:======================= 1.Android开发新浪面试题[开发者必看哦]下载地址 http://www.eoeand ...

随机推荐

  1. centos7内核升级记录

    1. 挂载centos7.9最终版镜像,执行升级执行:yum update 2. 重启服务器系统:init 6 3. 查看当前内核版本:uname -r 4. 查看历史内核,并卸载没用的:rpm -q ...

  2. 【云原生 · Kubernetes】kubernetes v1.23.3 二进制部署(一)

    kubernetes v1.23.3 二进制部署 1. 组件版本和配置策略 1.1 主要组件版本 1.2 主要配置策略 2. 初始化系统和全局变量 2.1 集群规划 2.2 kubelet cri-o ...

  3. day28-jQuery01

    jQuery01 参考文档1:jQuery API 中文文档 | jQuery API 中文在线手册 | jquery api 下载 | jquery api chm (cuishifeng.cn) ...

  4. 学生管理系统Python

    student1=[ {1:'lucy','age':17,'sex':'n','Pnum':1111111}, {2:'tom','age':17,'sex':'m','Pnum':2222222} ...

  5. Linux相关命令及软件安装教程

    @font-face { font-family: "Times New Roman" } @font-face { font-family: "宋体" } @ ...

  6. SpringMVC03:SSM整合

    一.搭建整合环境 1.ssm整合说明 2.搭建环境 二.Spring框架代码的编写 1.编写Spring框架(处理业务层) applicationContext.xml <?xml versio ...

  7. 【大数据面试】Flink 02 基本操作:入门案例、Env、Source、Transform、数据类型、UDF、Sink

    二.基本操作 1.入门案例 (1)批处理wordcount--DataSet val env = ExecutionEnvironment.getExecutionEnvironment // 从文件 ...

  8. 【消息队列面试】11-14:kafka高可靠、高吞吐量、消息丢失、消费模式

    十一.kafka消息高可靠的解决方案 1.高可靠=避免消息丢失 解决消息丢失的问题 2.如何解决 (1)保证消息发送是可靠的(发成功了/落到partition) a.ack参数 发送端,采用ack机制 ...

  9. 【实时数仓】Day06-数据可视化接口:接口介绍、Sugar大屏、成交金额、不同维度交易额(品牌、品类、商品spu)、分省的热力图 、新老顾客流量统计、字符云

    一.数据可视化接口介绍 1.设计思路 后把轻度聚合的结果保存到 ClickHouse 中后,提供即时的查询.统计.分析 展现形式:用于数据分析的BI工具[商业智能(Business Intellige ...

  10. 【Spark】Day03-Spark SQL:DataFrame、DataSet、sql编程与转换、项目实战(区域热门商品)

    一.概述 1.介绍 将Spark SQL转换成RDD,然后提交到集群执行[对比hive] 提供2个编程抽象:DataFrame&DataSet 可以使用SQL和DatasetAPI与Spark ...