一个Android开发6年程序员的年终面试总结,2021无畏艰难险阻,迎风潇洒前行!

本文是一位有着6年经验的Android开发者在2020年的面试经历总结,包括字节跳动、腾讯、滴滴等大厂的面试题目,涵盖了Android基础知识、组件化、性能优化、音视频处理、多线程等多个方面。经过四五个月的复习和多轮面试,最终成功入职大厂。作者分享了面试过程中的关键问题,为读者提供了宝贵的面试经验和复习指南。
摘要由CSDN通过智能技术生成

人生是一个漫长的过程,我们怀有太多的期望,就难免会遭遇失望与挫折。

今天这篇文章是我自己2020的小总结,2020感恩遇见。

一年的遭遇

2020开头就是一个不平凡的一年,疫情来袭,许多互联网公司面临倒闭的风险,而很多程序员则在面临着失业裁员的风险。

而我就是裁员大队中的一员,组织架构调整,进行了人员优化,业务线被解散,被裁员。

然后为了更快的工作, 草草的面试了几家公司最后入职了一家小公司,每天做着没有技术含量重复的工作,刚开始只是想填补被裁员的资金漏洞,但是工作久了还是无法适应,工作都是一些边缘化的内容,自己考虑到没有什么实质性地成长,然后在几个月后裸辞了。

后来开始重视面试,仔细挑选公司投递简历,在面试前也前前后后复习准备了四五个月,后来面试了十几家大小厂,拿到了几个offer,入职了一家大厂,目前工作已经有小几个月,工作氛围很好,干劲满满,2021继续加油!

不放弃,不气馁!

接下来分享一下面试的一些题目,只记录了一部分,因为有些忘了。

字节跳动4轮面试

一面

  • 插件化,启动activity的hook方式,taskAffity
  • okhttp支持HTTP2?http2的功能有哪些?tcp方面拥塞控制?tsl的握手和具体的非对称加密算法。非对称名称
  • handler的post(Runnable)如何实现的。callback,runnable,msg的执行优先级。
  • 阻塞是怎么实现的?为什么不会阻塞主线程?
  • 求二叉树中两个节点之间的最大距离。
  • 206含义,未修改资源是哪个,302含义,301含义
  • 多进程通信问题。binder优势。aidl生成的java类细节。多进程遇到哪些问题?
  • 动态代理传入的参数都有哪些?非接口的类能实现动态代理吗?ASM的原理
  • Application和Activity在Context的继承树上有何区别?二者使用上有何不同?
  • 任意一颗二叉树,求最大节点距离

二面

  • 设计一个日志系统。
  • 内存泄露的分类。怎么查看内存泄露的问题
  • touch事件源码问题。
  • 组件化的问题。module和app之间的区别。moduler通信是如何实现的。
  • native奔溃的日志采集,怎么处理?
  • 注解实现一个提示功能:如果int的值大于了3需要提示。

三面

  • 介绍下flutter的启动流程
  • 介绍下flutter与weex的区别
  • 组件化介绍一下
  • webview中与js通信的手段有哪些?
  • 介绍下flutter_boost的原理

四面

  • 适配器和装饰模式各自特点和使用场景
  • 视频编解码是怎么做的
  • 三色球排序

腾讯面试

  • 音视频采集编码播
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值