京东金融(Offer)
一面:
- 从长度为m的int数组中随机取出n个元素,每次取的元素都是之前未取过的,如何优化
- https是如何保证安全的,证书如何校验
- Android的签名机制,APK包含哪些东西
- 是否遇到过OOM,如何解决
- 是否做过逆向
- 对JNI了解多少
- 手写单例(DCL)
- 是否写过so文件
- 热修复原理,如何进行dex替换的
二面:
- 简单说下项目
- 内存泄露,如何检测以及检测的原理
- 点击Launcher跟点击微信支付启动微信有什么区别
- 逆序一个字符串,不能调用String的reverse方法(考察编码风格)
- 组件化原理,模块化机制
- 没有给权限如何定位,特定机型定位失败,如何解决
- 同步跟异步机制(是业务上的,不知道他想问什么)
- 线程池中核心线程数跟最大线程数如何定义
高德—汽车事业部(Over)
面试机会来自于Boss
一面:
- View的生命周期
- View的绘制流程跟事件分发
- Activity跟Window之间的关系
- 对C跟JNI是否熟悉
- 热修复原理,插件化是如何进行加载插件的
- Java中的锁,各种同步方式之间的区别
- ANR在四大组件中的时间,场景
- OOM,如何避免
- 内存泄露原理,如何避免
- MVC跟MVP之间的区别
- ListView针对多种item的缓存是如何实现的
- Android绘制二维跟三维的View的区别
- 是否了解硬件加速
- ListView是如何实现对不同type的item的管理的
二面:
- Android中IPC方式,各种方式优缺点,为什么选择用Binder
- 主流的热修复框架流派,原理,是否研究过classloader源码
- Android为什么要设计两种classloader,为什么不用一种,通过type来区分
- Bundle传递数据为什么需要序列化
- 手写一个快排,分析原理
- 广播传输的数据是否有限制,是多少,为什么要限制?
- Activity启动时生命周期是如何回调的?
- MVP.MVC.MVVM之间对比分析
- 组件化通讯:有几种通信方式,Arouter原理
- 插件化加载流程,原理
- 关于反射混淆,耗性能的解决方式
- 天猫七巧板布局原理
- 热修复流派,原理
高德—地图事业部(Over):
面试机会来自于Trinea内推
一面:
- RecyclerView的itemdecoration如何处理点击事件
- 单例模式如何修改数据
- android事件传递,非常细
- 多线程
二面:
- JVM内存分布,Classloader
- 静态代理跟动态代理
- 线程的生命周期
- 是否用过DataBinding
- 是否接触过JNI
- 对热修复跟插件化了解多少
- 对RN了解多少
- 二分查找
- 说下多态
- 编译期注解跟运行时注解
- 线程跟进程间通信
- Android中的IPC
- java中的传递
- equals跟==
- Picasso的存储
- 项目中的难点
- 项目中用到了哪些第三方
- MVC,MVVM,Clean架构
- 抽象类跟接口的区别,接口的默认修饰符
面试之外的学习心得
1.好记性不如烂笔头
这句谚语,几乎无人不知无人不晓,但是总被许多初学者抛在脑后。在学习的时候,总是看的代码多,而动手练习的代码少!身为一个程序员都应该很清楚,代码如果不多动手敲它,它永远不会自己跑进脑中,所以多动手才是成功的关键。
2.花更多的时间分析问题
花更多的时间理解和分析问题,然后再设计方案吧。你会发现剩下的事情很容易了。设计不是说要用建模语言和工具,可以是仅仅看看天空在脑子里构思。那些在遇到问题就开始敲代码的人往往会最终偏离需求。作为程序员,当你在编写代码之前,尽量把问题分析透彻一点,这不仅能提高你编码的效率,更重要的是能提高你的分析问题能力。
3.重思考,多总结
一个段好的代码并不是它们越复杂越好,简单的方法,实现复杂的功能,才是我们最需要的。要提高编码速度,更重要的是简化梳理程序流程,以最小的代码量完成功能实现。所以编程最重要的事情是思考和总结。
最后
这里附上相关的我搜集整理的24套腾讯、字节跳动、阿里、百度2019-2020面试真题解析,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。
总之也是在这里帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习
【一线互联网面试真题解析大全】
【字节跳动面试真题解析】
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
尾声
在我的博客上很多朋友都在给我留言,需要一些系统的面试高频题目。之前说过我的复习范围无非是个人技术博客还有整理的笔记,考虑到笔记是手写版不利于保存,所以打算重新整理并放到网上,时间原因这里先列出面试问题,题解详见:
展示学习笔记
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
2792)]
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-mGHnPlFd-1712903052793)]