距离上次跳槽已经过了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. 总结与反思

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

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

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

最新文章

  1. javascript异步编程的前世今生,从onclick到await/async
  2. maven settings.xml 阿里云
  3. redis 的消息发布订阅
  4. 关于安装Visual Studio 2015 RC版卡主不动的解决方案
  5. 使用Sqoop,最终导入到hive中的数据和原数据库中数据不一致解决办法
  6. How do I implement a cancelable event?
  7. javascript代码复用(四)-混入、借用方法和绑定
  8. [unity3d]手游资源热更新策略探讨
  9. 【js】IE、FF、Chrome浏览器中的JS差异介绍
  10. Linux 命令、Shell 杂货铺
  11. Leaflet学习笔记-基础内容
  12. .net中div置于顶层+iframe
  13. UESTC_王之迷宫 2015 UESTC Training for Search Algorithm & String<Problem A>
  14. 第十三篇 一个安装、管理windows服务的桌面程序
  15. 201521123100 《Java程序设计》 第7周学习总结
  16. 使用EF对已存在的数据库进行模块化数据迁移
  17. LeetCode 34. Search for a Range (找到一个范围)
  18. [BZOJ 3813]奇数国
  19. log4net使用封装,无缝切换 dotnet 和 dotnetcore
  20. oracle 合并多个sys_refcursor

热门文章

  1. iOS逆向之某多多App抓包
  2. 云原生学习笔记-1-docker
  3. Pycharm2022.1.3安装教程(包含基础使用配置)
  4. pagehelper踩坑记之分页乱套
  5. 【Scala】思维导图
  6. openpyxl写数据
  7. python Modbus 进行通讯时抛出Modbus Error: Exception code = 2
  8. 【深入浅出 Yarn 架构与实现】4-2 RM 管理 Application Master
  9. netkit-telnet源码编译安装
  10. Flask 终端启动运行