结语
由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!以下是目录截图:
由于整个文档比较全面,内容比较多,篇幅不允许,下面以截图方式展示 。
再附一部分Android架构面试视频讲解:
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
大概闭关复习了半个月,又投了字节,同期还投了腾讯等几个大厂还有一些小厂。
面了几个就收到了腾讯的面试通知,就先去了腾讯,没想到一路“过五关斩六将”直接拿下了offer。
后面字节也约了面试,但是腾讯那边HR问了一下我是不是还有别的面试,我如实说了字节那边,然后他们提了待遇,我感觉腾讯这边还是很有诚意的,又因为字节那边还没有定下来,就答应去腾讯那边了。
字节音视频一面凉经
时间:8月17号13.30,花了70分钟左右
面试过程:
一开始问我的是一位大佬,他先是问了我一些c++的知识,我答不上来,于是,就说谈一些比较基础的问题。(不得不说,面试官非常棒,很好说话,不存在故意刁难的行为)
面试过程基本上还算是顺利吧,并没有遇到冷场的现象。以下是能记住的遇到的问题:
- 抽象类与接口
- final,finally,finallize区别
- 锁
- 线程怎么开启,怎么使用
- 线程执行结束,我们怎么知道他结束了,其实是ipc的问题…
- tcp和http区别
- 然后让我手算255.255.250.0子网掩码的IP可以有多少个,应该是8+2,所以是2的10次方个
- 刚开始记错了,32/4是8,记成了6,面试官一直问我确认吗,还好后来反应过来了…
- ndk了解吗
- 音视频为什么编码,常见的音视频格式
- 说一下ffmpeg吧
- opengl是干嘛的,egl是干嘛的
- android怎么往ndk通信与调用的,我答了binder,不对,后来看了书应该是jni
- 算法:java手写一个链表类,同时将两个这个类的有序链表合并
唉,我先弄成了双向链表,说不要这么麻烦,后来合并又忘了把链表往下一个指了
感想
面试期间,面试官提醒了我一些(面试官是真的好),但是让我比较意外的是,我准备了好多android,Java的内容,但是一点都没有问到……感觉有些劲儿使错地方的感觉。
字节考的东西与其他家的有点不一样,但是也是看基础,就比如那个子网掩码的问题
面试官还是很nice的,提醒了我一堆东西,我感觉收获很多。
反问环节
感觉面试官人很好,我当时问了一下他,如果我进了公司成为正式员工,一般做什么工作。他的回答大概是,公司的工作比较多,看我的个人兴趣和能力,我Java和android做的比较多,应该是去做sdk和比较上层的东西。
后来他告诉我,这里的工作,九成都是用c++,问我这个方面有没有问题。当时我心里觉得还是有些挑战,但是为了面试可以顺利一点还是说了没有。
受挫
一面体验还可以,感觉通过的可能性还是比较大的,但是万万没想到,居然挂了。
逆袭
一开始不知道被刷下来了,我还向一些前辈打听字节二面需要注意的事项,想着提前做一些准备。所以,收到“感谢信”的时候还是很受打击的。
当时想着,再投一次,这次一定要进去。
**大概闭关复习了半个月,那段时间里,一直在网上找资料,看别人的面经,刷题库。**虽然找资料的过程很辛苦,但是当时心里憋着一口气,动力很足。
比较幸运的是,当时关注的一个公众号分享了一份大厂的面试真题,还有一套比较系统的Android系统学习资源。后面的大部分时间就是在啃这些资料。
指路↓↓↓
耗时298天,8大模块、3382页66万字,Android开发核心知识笔记!
半个多月后,对自己多了一些自信,决定开始新一轮的战斗。没想到这么顺利就拿到了腾讯的offer。
腾讯面试(丝滑)
腾讯一面,30分钟
时间有点远,记不太清了
不过记得,问的问题都是和比较常问的问题,算法是手写了快排和双重锁单例模式。
腾讯二面(PCG)
时间
18日15时 时长90分钟,60分钟提问,30分钟手写算法
问题
- 说一下帧率,比特率,分辨率
- 常见的帧率是多少,我说是60或者30,然后一直追问电视的帧率是多少,我一直在30和60之间犹豫,一直问我确认吗,最后我说了一下逐行扫描和隔行扫描
- 分辨率,只说了1080*720,好像还是错的,不过说了像素是RGB,最初是8:8:8,因为人眼对不同光线的敏感度不同,所以是9:9:6,现在rgb每一个增加到了10字节
- 点击应用图标以后的流程,AMS是什么
- 启动模式,生命周期
- activity与service通信
- broadcast是什么
- webView知道吗
- HashMap和concurentHashMap
- android优化做过吗,我答了内存泄漏,ANR的情况,并且怎么解决他
- 做过微信小程序吗
- 三次握手,第三次失败会怎么样
我说服务器不能确认客户端有接收信息的能力,会触发超时,重传 - 他说有点不对,怎么知道客户端没有接收
文末
对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。 整理的这些架构技术希望对Android开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。
最后想要拿高薪实现技术提升薪水得到质的飞跃。最快捷的方式,就是有人可以带着你一起分析,这样学习起来最为高效,所以为了大家能够顺利进阶中高级、架构师,我特地为大家准备了一套高手学习的源码和框架视频等精品Android架构师教程,保证你学了以后保证薪资上升一个台阶。
当你有了学习线路,学习哪些内容,也知道以后的路怎么走了,理论看多了总要实践的。
进阶学习视频
附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题 (含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618156601)**
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!