面试|2021 菜鸟金三银四铜五 Android 被锤历程出炉...

Posted HLQ_Struggle

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面试|2021 菜鸟金三银四铜五 Android 被锤历程出炉...相关的知识,希望对你有一定的参考价值。

文章备份…

3,2,1,走你~

终于做了这个决定

别人怎么说我不理

只要你也一样的肯定

我愿意天涯海角都随你去

我知道一切不容易

我的心一直温习说服自己

最怕你忽然说要放弃

跳槽真的需要勇气

来面对流言蜚语

只要你一个 Offer 肯定

我的跳槽就有意义

我们都需要勇气

去相信会在一起

人潮拥挤我能感觉你

放在我手心里你的 Offer

随着五音不全的歌喉,2021 年面(被)试(锤)正式开始…

个人简介

  • 5 年工作经验,后将近三年技术栈野蛮生长(Flutter、微信小程序、php、H5、后台 Api、PS 等…)
  • 96 非本非专,高中学历。已报名成人函授,24 年 1 月下证;
  • 无大厂光鲜履历以及较好项目,小公司,项目类型杂乱;

求职渠道

  • BOSS/拉勾:记得提前查询公司信息,提前避坑;
  • 内推:个人推荐有底气的直接走这个较好。建议优先线上,节省双方时间,后续可以约线下。

碎碎念

对于跳槽,个人其实相对比较抵触,相比来来回回跳,内心更趋向于随着公司的成长而成长…

可事实岂能如人愿?

此想法还是太过于理想主义,但至少这是个简单、真挚且内心一直期望的小梦想…

不过也是,及时的从温水区离开,走向更远的地方,看更多的风景,未尝不是一种更好的选择…

这里特别奉劝各位小伙伴,一定、一定、一定要有自己明确的规划,以及及时止损!!!

真的是狗血鸡汤,总要苦过一阵子…

这次找工作,的的确确被锤很久,遇到过暖心面试官,也遇到过无良公司,还好一直坚持想找个自己相对喜欢的公司,还好结果还不错。

面试,无非就是一场技术交流。遇到不会的很正常,积极响应面对,主动尝试分析,尽力就好。这面试是否成功,有时候还真不是实力决定,不过实力有时候确实也能决定很多东西。

不管如何,一起加油~

本来想着记录面试过程以及尽自己努力去搜寻对应较好的面试答案,当个笔记和参考留存,奈何个人能力有限,也不想简简单单的就是背背题、抄个答案或者误导他人。知其然而不知其所以然,还是想后续抽空好好亲自测试走一下,真正的去掌握,所以本文不会单独的为每个面试官问我的问题特别注明对应的答案,我还是希望各位看官,尤其和我一样的小白,可以认真的思索下,假如面试官这样问你,你的答案会是什么?还有没有更好的回答?

虽然个人能力有限,但是还是希望做出一些正确引导,至少自己认为正确就好。

或者说,初心不变吧…

在此别过,江湖再见,祝君更好~!

面试题以及答案推荐

下面是自己收集以及好友提供部分,仅供参考:

  • 链接: https://pan.baidu.com/s/1IKGwEfpxP0-usGHMi-A1ag 密码: pff5

强烈推荐如下文章,作者很贴心了:

剩下的各位老铁自己寻找吧,有不错的记得分享哈~(其实这块都能单独拆分一篇文章,仔仔细细将自己的笔记相关分享下,但是的确最近有点疲惫了,先不整理了,后期自己慢慢进行学习分享吧)

漫漫坎坷面试路…

以下面试题并不完善,有一些由于紧张忘记了,😂 大家见谅…

一起加油,努力找到自己喜欢的公司~!!!

关于 Title 公司五星说明:

  • 58 最棒!感谢 58 面试官,全程平易近人,全程都是在找我个人的优势,帮我总结,另外后续很贴心的指出简历上存在的不足,包括对个人的一些建议,全程由好到爆,而且面试老哥实打实的从我个人的角度出发,去替我认认真真分析。感觉不像是面试,更多的是学习,能感受到一丝丝鸡老大的感觉。强烈推荐 android 小伙伴参与投递,还是要有一些学历哈,技术贼牛掰的大佬除外。
  • 亚洲创新集团、Keep、中科物栖、微爱面试老哥也是蛮不错的,贼老贴心,最后还不忘记鼓励以及提出建议,强烈推荐~

2021-3-1 雅识(做老年人产品)

电话沟通大概 30 分钟左右,整体来看面试官相对较为随和。

面试内容:

  • 你是如何跨地区协调处理开发相关事宜,痛点是什么,如何解决,请详细列举说明。
  • 关于任务安排,我们想具体了解任务细化的范围,请详细列举说明。
  • 关于前后端配合,这块有什么痛点,你又是如何解决的?
  • 针对你个人经验,来谈谈 Flutter 和移动端的优劣势,排除性能相关。
  • 工作中会编写测试用例吗?用过哪儿些?自动化测试工具呢?
  • 举例说明你在工作中最有成就感、最有难度的一个事儿。
  • 我看你最近在应用上架,简单聊聊目前应用上架需要注意的细节以及槽点。
  • 平时工作中会去关注卡顿率么?你是如何处理卡顿?
  • Code Review 你们是怎么做的?为什么这么做,请说明原因。
  • 简单聊下你为什么会选择离职以及为什么选择我们公司的原因。

面试感受:

  • 对于回答面试官的答复,条理性还是有些欠缺,下次脑子里先过一遍,有个轮廓在慢条斯理答复。面试官感觉蛮友好的。 😂

2021-3-2 乐友集团(电商)

线下面试大概 40 分钟左右,面试官蛮不错的,抓着 Google Play 一通锤。

公司地址比较偏,在四惠那边,公司内部环境还不错,前台远远的看了一眼,进门领张表格、扫码,一通填。

面试内容:

  • 先来个自我介绍,简单说明工作职责内容。
  • 你是本科在读吗?请对学历这块简单说明下。
  • 看简历,你做过 Android、Flutter 以及微信小程序,能说下为什么做这么多而且这么杂么?团队都是这样的吗?
  • 你们公司是外包么?是否有内部自营项目?团队规模怎么样?公司内是属于技术推动产品还是产品推动技术?
  • Flutter 的开发经验有多久?Flutter 是自学?具体某个项目开发周期多久?Flutter 是独立项目还是混合项目?
  • 项目中有使用 Jetpack 吗?你觉得 Jetpack 有什么优势?请列举说明你使用的具体 Jetpack 内容以及你所感兴趣的点。
  • 项目是全部使用 Kotlin 吗?你怎么评价 Kotlin 和 Java,或者说你认为的 Kotlin 优势是什么?
  • Android 项目是使用的 androidx 吗?是初期使用 androidx 还是后续升级 androidx?有没有遇到哪儿些问题?
  • 说说你是怎么具体操作减少 Apk 大小的?
  • Android 项目中用到了哪儿些框架(MVC/MVP/MVVM),你是怎么选择这些框架的?简单说下对框架个人理解。
  • 你们项目是如何区分国际版、国内版?项目是单独区分还是怎么维护的?
  • Tinker 热修复如何修复指定渠道 Apk?简单说下热修复可以修复哪儿些东西?
  • 看你使用过 CoordinatorLayout,简单说说吧。
  • 你为什么推荐使用 ConstraintLayout?LinearLayout 不好用么?迁移成本你觉得怎么样?从代码层面而言不会乱吗?
  • 有过 IM 开发经验吗?直播/点播是用的阿里云?
  • 看你文章什么类型都有,是个人好奇心比较重?私下下班回去写这些吗?简单谈谈想法。

面试感受:

  • 可能现在的公司隶属于外包性质吧,多多少少能感受到点面试官的无奈。整体回答较为一般,有些东西知道但是没表达出来,有些东西属于太过于久远了,也回答的不太好,整体有待加强。

2021-3-3 雅识二面

线下面试了大概一个多小时,公司在望京南那边,内部属于共享办公性质。面试官貌似是个 ios

自我介绍的时候直接表明了,我就是来被锤的。 😂

面试内容:

  • 请做一下自我介绍、学历说明以及工作经验。
  • 公司团队多大,主要负责哪儿些内容?公司是否有自营项目?外包吗?
  • 为什么 Google Play 搜索不到,原因是什么?怎么处理的?现在是一个什么样的状态?
  • 关于弹框隐私协议,工信部怎么规定的?
  • Luban 压缩具体在业务中做哪儿些操作?你知道它内部使用了哪儿些算法吗?
  • 图片使用 Glide,你为什么使用它,它有什么优点,内部算法有什么?
  • 请手写 Glide 加载图片地址到 ImageView,并且图片展示效果为一个圆。
  • ShapeableImageView 你知道原理是什么吗?最低兼容版本你知道吗?
  • 假设后端接口列表中返回了超大图片,你是如何处理优化并正常显示列表中的?
  • 使用过 Jetpack 的哪儿些东西,你对它评价怎么说?
  • Jetpack Compose 了解过么?简单谈下个人理解。
  • Kotlin 与 Java 区别在哪儿里?
  • Android 原生 Apk 以及 Flutter Apk 大小优化怎么做的?
  • 怎么统计性能调优数据?
  • 项目中接触过 WebView 相关吗?这块怎么处理的?
  • SpannedString 原理是什么?都用过它做什么操作?
  • TextView 中 setText(html.fromHtml()) 内部原理知道吗?
  • 简单描述 CoordinatorLayout 以及内部事件如何分发?
  • 图片轮播怎么做的?如何做到我在最后一张无缝滑动到第一张图片?
  • 你知道 Retrofit 是怎么发出的请求吗?
  • 你的 Android 借壳分享微信中 mmessage_content 怎么算出来的?
  • 项目中 Flutter 中是原生开发还是混合开发?使用了哪儿些框架?
  • 假设地图现在没有开源库,你怎么在 Flutter 实现地图效果?如果我想当前页面上面是地图下面是其他内容呢?

面试感受:

  • 一开始还行,到后续工信部怎么规定的给我整的稍微有点蒙圈,以及后续问 ShapeableImageView 原理,多次询问,从认知中的自定义 View 到内部 onDraw() 都描述了,还是再问是什么原理,整的有点懵,后续也多少有点不耐烦了。自己也对原理和细节没有好好掌握,主观能动性还是比较差。也算是受教了。

2021-3-5 凌宇智控(VR)

电话面试大概 30 分钟左右。

面试内容:

  • 自我介绍,公司项目描述。
  • 项目中有使用过哪儿些技术,遇到过哪儿些难点。
  • 对 NDK 开发有了解吗?Kotlin 可以开发 NDK 吗?对 CPU 架构类型了解多少?
  • 性能调优具体是什么操作的?
  • 屏幕卡顿的原因是什么呢?你怎么处理的。
  • 音视频相关开发经验有吗?了解直播背后技术原理吗?比如摄像头怎么采集,如何上传等。
  • 如果让你写 PerfDog 中有关展示 CPU、GPU 等数据,你怎么操作?
  • LeakCanary 底层原理怎么实现的?
  • 跨平台之间你是如何抉择的?为什么选择 Flutter,写过 RN 么?
  • Flutter 实际开发经验多久?其中用到过哪儿些技术?简单描述下。
  • 有跨端研发经验吗,例如 iOS、Android 等。
  • 你是如何实现 Flutter 与原生通信的?
  • 使用过 Flutter 混合原生开发吗?
  • 使用 Flutter 遇到过哪儿些坑,怎么处理的?

面试感受:

  • 感觉更偏向于底层,原理,据说是前期 Flutter 后期给 Unity 写接口调原生。个人对于底层理解片面,深入性不够,一些东西只停留表面。面试官蛮不错的。

2021-3-5 青子未来(电商/游戏)

线上面试,给了几道题,时间 90 分钟。

面试内容:

在线编辑地址:

面试感受:

  • 相对个人是第一次参与此类型的面试,说实话有点懵,拿到题目后,看了一圈,似乎也只有第四题个人还有点想法。纠结了一会儿给出一个伪代码思路,面试官要求 Java,当时题都贼蒙圈,Kotlin 直接写个思路提交了,也不是最优解。相对个人而言,还行吧,至少没看到题就放弃,也算是小小进步了。
  • 个人关于第四题思路,由于从左到右特征为:小 --> 大 --> 小,所以第一步直接获取数组最大值,随后将这个数组一分为二,直接获取最大值在第一个数组中的 indexOf 索引,之后遍历拆分数组 1,开始位置从 indexOf 开始。而第二个索引直接获取 lastIndexOf index,然后直接遍历第二个数组,结束位置就是 lastIndexOf index。当然这里会有基本判断,如果获取到的 indexOf/lastIndexOf 为 1,直接输出拼接字符串即可。(暴力破解法,面试官可能不太满意,没关系,有所收获、有所成长就好)

2021-3-6 Keep(硬件)⭐️⭐️⭐️⭐️

13:30 进 15:46 出来,Keep 公司环境蛮不错的,望京南附近,接待的小姐姐很友好,流程处理很快,门口保安大哥蛮贴心,给了一瓶水。Keep 分两个面试官先后面试,具体第一个面试官职称忘记了,简称软件面试官吧,应为后续的面试官是硬件方向的,希望小哥哥看到我这么描述别干我,😂

面试内容:

软件面试官:

  • 自我介绍、工作履历简述。
  • SVN 和 Git 区别?描述下 Git 提交过程以及什么是工作区和暂存区?
  • Git 中 merge 作用?和 rebase 有什么区别?
  • Java 中强引用、软引用、弱引用、虚引用区别。
  • Https 和 Http 区别,内部使用哪儿些算法。
  • 对称加密和非对称加密区别。
  • Jetpack 实际项目中用过哪儿些?
  • 简述 Apk 包大小优化思路。
  • Kotlin 拓展函数怎么实现的?基于什么原理。
  • Kotlin 属性委托怎么实现的?基于什么原理。
  • 简述 SharePreferences 以及过程中遇到的问题。
  • 为什么选择 MMKV,MMKV 有什么优势,内部原理是什么?
  • 简述 Handler 以及原理。泄漏怎么解决?

硬件面试官:

  • Flutter 实际开发经验有多久?使用/了解过 Flutter 混编吗?
  • 怎么优化的 Flutter 包大小?
  • Flutter 中 Element、Widget 简述。
  • Android Compose 了解过吗?简述一下。
  • so 库动态加载有了解过吗?
  • 简述 MMKV 原理。
  • SharePreferences 有什么缺陷?支持跨进程吗?
  • 在不使用任何三方库,如何实现弹幕功能?如何保证低端机上流畅性。
  • 自定义弹幕中,你 Model 怎么设计?View 又怎么设计?
  • RecyclerView 和 ListView 有什么区别?
  • RecyclerView 缓存原理。
  • 在不使用任何三方库以及系统提供控件,如何实现 RecyclerView 下拉刷新?
  • 直播是什么实现的?需要注意的有什么?使用过的视频格式有什么?如何保证视频以及文字/语音同步性?
  • 开发过音频相关吗?用的是什么?音频格式是什么?
  • 微信小程序使用什么开发的?Vue 还是?

面试感受:

  • 公司环境很 nice,整栋楼都是,我还在下面找了半天。
  • 面试官很不错,一面面试官我都能感受到尴尬了,问啥啥不会,扎心的一批,没好好背,面试官一进来直接后背全湿透了,手动滑稽。二面面试官问的很全面,有技术、有业务、也会现场出场景,回答对应方案,以及其中存在的不足。整理来看很不错,强烈推荐小伙伴去 Keep,全程友好到极致。
  • 所谓的八股文还是要背的,不然仅仅使用还是不够的。白白错失好的机会,蛮可惜的。

2021-3-9 快手(架构组)⭐️⭐️⭐️⭐️

牛客网线上面试,煎熬的 22 分钟,都能感觉到面试官的无语,也算是一场经历吧。

面试内容:

  • 自我介绍以及学历简述。
  • HashMap 内部存储是怎样的?
  • hash 冲突是个什么概念?冲突之后怎么解决?
  • 哈希桶是什么结构?
  • 链表结构节点是怎样的?
  • Java 中的 volatile 是线程安全的吗?如果对他做自增操作,例如 a++。
  • Handle 中的 postDelay 实现原理是怎样的,它是怎么实现的延迟处理?
  • 优化线上 Apk 大小都了什么操作?做完 Apk 大小之后从多少降低到多少?
  • 下载转换率怎么统计的?
  • 假设现在给你个需求,需要在打包的过程中去处理图片,你有什么思路?在哪儿个 task 去做 hook?
  • 资源编译的流程是什么样的?
  • 360 加固原因是什么?
  • 你觉得加固或者安全方面,应该从哪儿个方面入手?Dex 层怎么处理能防止反编译?
  • so 加固你知道有什么方案吗?
  • 你比较擅长什么?设计或者某个技术有比较深的了解?
  • 责任链模式简述,一般用于什么场景下。
  • 你怎么理解的依赖倒置设计,具体在什么场景下使用?

面试感受:

  • 只能说个人平时对底层关注较少,很多东西了解的不够透彻。感谢老哥最后仍不放弃,尝试问我有什么优势或者哪儿些我擅长的地方没有问到,感谢~

2021-3-10 欢集 Fun

比较好玩的是,走错楼层了,对方公司直接给我薅进去,面试官一脸懵逼的过来,问我,我们打算招 iOS,没打算招 Android 啊,聊聊?我连忙说我走错了,拿上简历就跑。尴尬了。

公司位于团结湖附近三里屯 SOHO,整体的办公环境还不错,公司氛围个人蛮喜欢的。有个大哥很热情,hr 小姐姐很皮,面试官是个小姐姐 + 男同胞。小姐姐贼漂亮,贼好看。很放松,很开心。

进门需要做题,大概的意思是,启动页广告图获取,用什么方式实现,需要考虑后台下载、广告版本、超时等。给我整的有点蒙,键盘不在手,😂 我又找借口了…

感觉应该是想要偏向于直播类实战经验,聊的时间不到 20 分钟吧。

面试内容:

  • 针对面试题的一些解读。
  • 如果图片资源较大的话,如何保证正常加载出来?
  • Luban 压缩主要做的什么操作?
  • 阿里云直播过程中遇到过什么问题吗?
  • 直播、点播针对断网情况,有什么应急处理?
  • 在这个项目中解决了什么比较深刻的问题,或者说具体进行了什么处理?
  • Apk 瘦身具体是什么操作的?优化结果是什么样的?
  • 加固为什么会导致包大小变大?
  • 你有尝试过破壳操作吗?
  • 简单聊聊 Tinker 热修复?
  • 团队规模是多大?
  • 补丁包生成是怎样?如何下发?
  • App 用户量多少?

面试感受:

  • 只是项目前期简单接触阿里云直播,对实际场景兼容等没有实际开发经验,这也没辙。整体来说回答的一般吧,小姐姐贼好看,不是那么很紧张。偏于实际项目开发。

2021-3-10 58 ⭐️⭐️⭐️⭐️⭐️

58 得坐公交,下地铁还有六站地,搞得有点晕车。环境没得说,高大上。对于我这小司简直是刘姥姥进入了大观园。58 面试官很不错,很贴心,一场面试,一场交流,非常感谢。祝面试官早日晋升,超神吧~

强烈推荐大家来试试~

面试内容:

  • 自我介绍、学历说明。团队规模多大,团队角色。项目为什么做的这么杂?
  • Flutter 实际经验有多久?有混编经验吗?
  • 和 RN 对比后怎么会选择的 Flutter?Flutter 相比 RN 有什么优势?Flutter 不支持热更你怎么看?
  • 如果现有项目想接入 Flutter,需要做一些什么样的前提准备?或者是否考虑混合方式?
  • 在 Flutter 中遇到过一些什么问题?
  • Flutter 地狱嵌套有什么好的解决方案?
  • Flutter 有涉及到状态管理方面吗?具体说下。
  • Flutter App 针对应用崩溃是如何监控的?
  • 假如说我们现在有款产品需要快速迭代,在不考虑人力成本的前提下,你是如何决策使用某种技术以及原因。
  • 你了解的大厂混编方式有哪儿些?
  • Java 迁移 Kotlin 是什么时候进行?是你主导迁移吗?基础组件也迁移了吗?你是如何说服领导进行技术升级?
  • 迁移过程中遇到过哪儿些问题,团队怎么磨合?升级过程中是否涉及到版本升级这块内容,怎么处理?
  • Kotlin 协程有用过吗?简单描述。
  • 协程挂起组装和 RxJava 有什么区别吗?
  • 协程的挂起和我们平时使用的线程挂起有什么区别吗?
  • App 中有开启多进程操作吗?有多进程开发经验吗?
  • 插件化、组件化了解过吗?
  • 模块化是怎么划分的?划分的模块复用率是怎样的?
  • 页面间的通信是怎么做的?
  • 性能上优化是怎么操作的?
  • 内存优化以及统计怎么处理的?
  • 内存泄漏怎么处理的,什么情况下导致泄漏?
  • 图片优化怎么做的?
  • Glide 原理底层是什么样的,说说简单理解。
  • 关于图片缓存有没有做过一些处理?
  • 你了解一张图片在内存中和硬盘中所占空间大小吗?
  • 是否在布局这块有过优化?具体怎么操作的?使用过约束布局吗?简单描述。
  • 项目中有做过一些统计、埋点吗?怎么操作吗?有研究过一些静态 hook 方案吗?
  • 关于 Android 中插桩、注入有了解过吗?
  • Apk 瘦身具体是什么操作吗?
  • 关于自定义 View,有没有比较做过比较好的?常用的方式是什么样的?
  • 个人 Github 大概内容是什么样类型的?

面试感受:

  • 58 真的是有史以来体验最棒的,全程面试官一直在试图给我总结亮点,挖掘优势,甚至多次提到,有什么你擅长的东西我没问到的吗?很平易近人,很好,很贴心。老大也说过,好的面试官是回去挖掘你的优势。聊了很多吧,发散面很广泛,大厂老哥说话很精简,基本是我啰啰嗦嗦废话一通,老哥几个关键词概括,而且有理有据。给我提了很多建议,很不错,很贴心的一个老哥。从 58 出来很开心,默默看了 58 好久,突然爱了。😂 再次感谢面我的老哥~也希望互联网多一些和老哥一样的人。
  • 真的是,知道而为实践,终究还是纸上得来终觉浅。感谢老哥,学习到很多。强烈推荐去 58 看看,哪儿怕和我一样被挂了,也能学到不少东西。

2021-3-17 掌心

相对面试前期很简陋,一条短信,电话邀约不到一分钟,整个人很懵逼…

高德地图导航导到另外一个地方,索性离得不远,找半天,都想回家了…

D 座爬上三楼,走过天台,进入 B 座,再爬到六楼…

体验差到了极限…上来看项目,没带手机…

两轮面试… 没问点啥…

面试内容:

  • 公司做什么业务?
  • Kotlin 熟练度怎么样?聊一下协程。
  • MVC、MVP、MVVM 区别是什么?
  • 项目中主要负责什么模块?
  • 聊一下性能优化。
  • 大致聊下 LeakCanary 怎么使用。
  • Handler 通常是什么情况下会导致泄漏。
  • 视频直播、即时通讯用的是什么?
  • 有做过微信语音类似功能吗?
  • Retrofit 简单聊一下。

面试感受:

  • 没法说,有点儿,ummm,懂得都懂。

2021-3-17 微软

微软是直接下来一轮笔试,一帮人坐在会议室,刷刷写。

当时旁边有个小姐姐,上来一通写,给我整懵了,感觉好强。然而好景不长,开始涂了,随后各种唉声叹气。整的我无语到了极限…

算法貌似有四道,就记住两道,剩下忘干净了,瞧我这脑子啊…

算法内容:

  • 写个方法,接受一个字符串,输出反转后的字符串。
  • 假定现在有 s1 和 s2 两个字符串,求最长公共值。

Android 内容:

  • Android 动画有几种?区别是什么?版本发布前推荐使用什么动画?和用户交互推荐使用什么动画?如果两者都要兼顾呢?说明理由。
  • 如何实现代码封装,如何保证团队多人开发代码复用。
  • Android 中 UI 适配的方式有什么?举例说明。
  • 项目中的 Log 模块如何设计?
  • 手写实现 event bus 关键部分。
  • MVP 是什么?有什么优势?手写关键部分。

面试感受:

  • 环境蛮不错,贼老大。可以和鸡老大吹水了,我也是进过微软的男人啦~

2021-3-18 汽车之家

前期发生了一些不愉快,门口保安大叔去热饭了,折腾半天才进去。给 hr 打电话,hr 让找前台登记,找半天没找到,问了一个同事,人直接说哪儿有前台。无奈之下又打电话,又让找水吧,最后得亏大爷热饭回来了,给我带过去了。贼郁闷。还是建议邮件直接写明较好吧。

面试内容:

  • 自我介绍。
  • 从你项目中列举一个你觉得比较有成就感的项目来说说。
  • 从架构上、组件化、插件化或者解决问题的角度上来介绍下你做了哪儿些工作,有什么深刻印象积累?
  • 简单说下常用的 support 包有哪儿些和 androidx 相关的。
  • 既然有 support 包的存在,为什么还要出现 androidx 呢?
  • 对 App 大小优化是怎么操作的?
  • 屏幕适配怎么做的?
  • 比如说,现在有个需求,大分辨率手机一行显示 30 个,小屏幕手机一行显示 20 个,如果是你的话,你会怎么实现?
  • 常见的内存溢出场景有哪儿些?
  • 项目中列表使用 ListView 多还是 RecyclerView 比较多,简单说说。
  • RecyclerView 如何更新一条数据?
  • MVVM 和 MVP 有什么区别?你更喜欢用哪儿种模式,为什么?
  • Retrofit 如何全局监听相应体,比如我现在需要把请求信息全部打印出来。拦截其中具体是如何实现的?
  • Android 中的多线程是如何处理?如果多任务情况下如何处理?
  • Android 中线程池你了解多少?
  • 你项目中全部迁移 Kotlin 了吗?为什么迁移?
  • 你感觉 Flutter 适合用于什么项目类型/场景?
  • Flutter 列表高速滑动和原生列表有什么性能差异性?
  • 你用 Flutter 做列表有没有做过一些列表方面的性能优化?
  • 灰产 App 中主要用了哪儿些技术,解决了什么问题?
  • 你是出于什么想去破解逆向其它 App 的?有尝试过破壳吗?
  • 离职原因以及学历说明。

面试感受:

  • 相比其他家的 hr,汽车之家的多少让人感觉比较无语。可能也是,毕竟我还是小渣渣,要是鸡老大,可能会好很多吧。面试官很友好,问的很全面。就是面试环境不咋地,后期应该到吃饭时间,好多人,很吵,得趴着凑过去说话,回家听录音进行复盘,后期全是一个小姐姐狂野的笑声。😂

2021-3-18 奥德达斯

相当无语的一家公司,hr 当初打电话的时候问我英语水平怎么样,我说很一般。问平时有阅读英文文档习惯吗,我说看国外的文章会借助翻译软件,平时也在学。结果去了,好家伙,又让我翻译英文选择题,又让我翻译英文文档,直接无语到极限。盈创动力真的好大,里面环境真的差。

面试以笔试为主,阶乘没整过,后续没聊几句走人了,这里简单附上相关题目。

面试内容:

  • 简述 Kotlin 和 Java。
  • 编写一个求阶乘的方法 Fact,方法的返回值为阶乘的结果。
  • Http get 和 post 有什么区别?
  • onCreate() 和 onStart() 区别。
  • 看以下代码会输出什么结果?
data class Foo(var data:Int)
var foo1 = Foo(2)
var foo2 = Foo1
foo2.data = 4
print(foo1.data)
  • 你用 var 声明 book1,用 val 声明 book2,他们有什么区别?最后一行能不能编译?
data class Book(var name: String = "", var price: Int = 0)

var book1 = Book("The Last Sun", 250)
book1.name = "Incredible hulk"

val book2 = Book("The Last Sun", 250)
book2.name = "Incredible hulk"
  • 看以下代码会输出什么结果?
val aVar by lazy {
    println("I am computing this value")
    "Hola"
}
fun main(args: Array<String>){
    println(aVar)
    println(aVar)
}

面试感受:

  • 没法说,下次应该直接和 hr 说清楚,英文很烂,别浪费大家时间了。

2021-3-18 考呀呀(教育)

考呀呀 hr 蛮不错的,打电话时,我说下午约好面试了,简单询问了下面试地点,和我说没事,很近,面完随时顺路过来。面完屁颠儿屁颠儿赶过去了。面试先写笔试题,然后和搞算法的老哥聊一波,最后远程视频和总监聊一波。算法老哥人不错。面试内容直接合并了。聊了几乎快一个半小时,ummm

面试内容:

  • Activity 生命周期。
  • Https 和 Http 区别。
  • 下载一张图片如何避免 OOM?
  • 淘口令如何实现?如何实现版本兼容?如何避免微信封锁。
  • 假设下载有个需求需要统计用户观看视频总时长,你如何处理?什么时候下进行数据上报?

面试感受:

  • 氛围不赖,楼下奶茶店飘香,全程甜甜的,和面试官调侃,办公氛围蛮不错。整体来说偏向于实际场景给方案的吧,有些地方不是很明白,据说单休。

2021-3-19 亚洲创新集团(社交)⭐️⭐️⭐️⭐️⭐️

周五下午迷迷糊糊就接到电话了,想着去溜达溜达一圈,结果失策了。公司环境很不错,从前台小姐姐到 hr,再到面试官,最后直接给我整的老后悔了,被朋友一通 diss,哪儿来的胆子,不做任何准备,直接下雨杀过去…

面试内容:

  • 工作多久了,你觉得你和其它 Android 工程师相比,有什么优势。
  • 你的 GitHub 主要内容是什么?
  • 假如当你带小朋友,你是如何和他进行分享以及帮助等?
  • 你持续写东西,输出的动力是什么?
  • Kotlin 用多久了,你认为你的 Kotlin 掌握水准在哪儿?初级、中级、高级?
  • var、val、let、apply 有什么区别?
  • let 返回 it,apply 返回 this,它们有什么区别?为什么这么设计。
  • lateinit 作用是什么?
  • Kotlin 协程有用过吗?用在什么场景?
  • 协程是个什么东西?
  • 有了解过协程如何切换线程原理吗?
  • Retrofit 和 OkHttp 是什么关系?
  • Retrofit 是如何通过注解来方便我们 api 调用?基于什么原理。
  • JetPack 用过哪儿些?
  • ViewModel 用来做什么的?
  • ViewModel 如何实现生命周期绑定?
  • ViewModel 为什么存在?那我直接创建个类不可以吗?如何实现数据绑定。
  • ViewModel 如何实例,如何使用的?
  • LiveData 如何实现的?
  • LiveData postValue 和 setValue 赋值,这两个会不会丢失数据,有没有遇到过?
  • MVC、MVP、MVVM 区别是什么?
  • Rxjava 用的多么?map 和 flatMap 有什么区别。
  • RxJava 使用哪儿个操作符能保证顺序执行?
  • 如果让你自己设计一个 Glide 你会如何设计?
  • RGB_565 每个像素点占多少内存?
  • 为什么会使用 RGB_565?
  • 为什么要对图片进行一些压缩?那服务器直接给我们直接裁剪指定尺寸大小不就好了。
  • 假设现在有一张 1MB 图片,我直接设置给 ImageView,那么它在内存中占用空间有多大?
  • 性能优化都做过哪儿些内容?
  • 瘦身的话,我们都是怎么做的呢?
  • armeabi 和 armeabi-v7a 有什么区别?
  • so 库可不可以动态加载,如何实现?
  • Android 版本从 5.0 到 12 都更新了什么东西?
  • Android 5.0 ART 是个什么东西,具有什么优势。
  • 今天的面试,自我感觉怎么样?

面试感受:

  • 和面试官聊着,聊着,突然很想去,如果我 Leader 是这样的该多好。可惜啊,这里奉劝大家一定要做好面试准备,不能浪费每一次面试机会。
  • 超级喜欢这样的 Leader!!!

2021-3-22 映客直播

面试内容:

  • 你之前是做什么项目的?是个什么业务呢?
  • 考虑换工作的原因是什么?
  • 你现在考虑的公司类型是什么样子的。
  • 对直播有了解吗?
  • 能简单介绍下对于某个技术研究比较深入或者对某些方案有深入研究的。
  • 瘦身用到了哪儿些技术呢?
  • so 是否可以热加载,如何操作?加载如何打开 so 库呢。
  • svg 为什么体积会比较小?为什么是可伸缩的?是否可以无损缩放?
  • svg 是否可以放一张照片,为什么?
  • 你对网络协议熟悉吗?比如 https 原理是什么。
  • https 连接建立后,数据传输是加密还是非加密?是对称加密还是非对称加密?
  • 对称加密主要用于什么场景。
  • 菲波列数如何求第 n 项值。
  • 递归时间复杂度。

面试感受:

  • 面试老哥教我半天 2 的 10 次方,尴尬了。😂 还教我老半天时间复杂度是什么。感谢老哥,有所收获。

2021-3-22 塔读文学

面试内容:

  • 自我介绍,公司 Android 团队规模、主要业务、个人主要参与什么项目、项目属于什么类型。
  • Java 用的多吗?Kotlin 使用时常。
  • Flutter 是个人私下玩还是公司项目?是否上线。
  • Flutter 和原生开发,你觉得会有哪儿些问题,技术难点在哪儿里。
  • Flutter 是纯 Flutter 还是基于混编?
  • 简单说下 Kotlin 中的协程以及它的优势。
  • 在 Google Jetpack 有用到过一些什么你觉得比较好的控件或者组件。
  • ContentProvider 底层是基于什么实现的。
  • starup 和我直接使用延迟加载有什么区别么?
  • Lifecycle 具体在项目中哪儿些模块有使用?
  • 奔溃率你是如何优化的?具体举例。
  • 期间有没有遇到棘手的问题,如何解决的。
  • 假设现在让你实现图片上覆盖一个旋转角度 45 度 label,如何实现,列举你知道的方案。
  • 自定义 View 中如何实现 View 旋转?
  • 简单说下你日常开发中如何使用约束布局,常用到的方式有哪儿些?
  • 针对框架,有没有你最了解、最深入的吗?
  • 针对 Glide 有没有做过一些复杂操作?
  • Glide 如何实现图片加载进度展示?
  • 简单说下个人优势。
  • Java 中的修饰符作用,默认修饰符作用是什么。
  • Java 中的 Map 如何遍历?Kotlin 又如何遍历?
  • 个人针对加班怎么看?

面试感受:

  • 面试官很和善,丝毫没有紧张感。面试官一直来来回回找我优点,怕漏了忘记问,暖暖。整体来说还不错吧,有一些失误,也把自己想说的说出来了,可能还是自身底蕴不够吧。公司办公环境不错,小姐姐也蛮多。

2021-3-29 好未来

面试内容:

  • 简单自我介绍,最近的项目是独立开发还是团队开发。简单说说项目技术点。
  • 直播怎么做的,有没有遇到过卡顿、黑屏等情况。
  • 高仿抖音上下滑动是怎么做的?有没有做一些缓存策略。
  • RecyclerView 有看过一些原理或者设计吗?
  • RecyclerView 缓存是怎么缓存的?
  • RecyclerView 整体设计采用了什么设计模式?
  • LayoutManager 用的什么设计模式?
  • MVVM 是怎么搭建的?
  • ViewModel 是怎么和 View 之间怎么绑定的?如何通讯。
  • ViewModel 自己写的还是用的 Google 的 ViewModel?
  • ViewModel 充当业务逻辑层,如果两个模块逻辑一样,只是 UI 不一样,如何保证复用?
  • ViewModel 如何绑定不同的页面。
  • ViewModel 是单向绑定还是双向绑定?
  • LiveData 如何实现双向绑定。View 到 Model,Model 到 View 如何实现绑定?
  • 你使用 DataBinding,如果有问题的话,如何调试 XML?
  • DataBinding 有什么优势?
  • DataBinding 和 ViewBinding 有什么区别?
  • Flutter 如何实现调用原生能力,具体实现原理?
  • Flutter 混编原生,混合栈如何解决?
  • 你觉得 MVP 比 MVVM 有什么优势?
  • 项目中有涉及到多线程通讯?如何实现?
  • 说说 Handler 机制。
  • MessageQueue 是一个什么样的数据结构,为什么用这样的数据结构?
  • MessageQueue 为什么要用单向链表,用数组或者集合不行吗?优势是什么?
  • 链表相对数组的优势是什么?
  • 从数据结构的角度层面分析为什么链表插入/删除快,查询慢,而数据查询快,删除/新增慢呢?
  • 如果 MessageQueue 是链表的话,Message 放在 MessageQueue 中轮训起来会不会消耗性能?
  • 链表如何遍历?
  • 如果我开了 18 个子线程,同时发送,并发的情况下如何保证消息及时性?
  • 它是如何分发到子线程中?同时下发还是先后顺序发到子线程?可以并发处理吗?
  • 项目中涉及到插件化、组件化吗?
  • 模块化如何实现模块之间解耦合的呢?
  • module A 和 module B 之间有需要调用 Api 这块怎么解决的?
  • module A 和 module B 之间如何通讯?
  • 有用到路由或者事件总线吗?让你设计一个事件总线怎么设计?
  • EventBus 注册和销毁是成对儿出现的,如果不销毁会出现什么问题?
  • App 性能上有做过哪儿些优化?
  • 你觉得使用 IntentServie 和自己写一个异步加载有什么区别吗?
  • 项目中有涉及到多进程吗?多进程中,进程和进程是如何通讯的?
  • Binder 底层通过什么实现通讯?
  • MMKV 有什么优势?
  • MMKV 内部是如何进行数据存储的?
  • Android 中有哪儿些存储方式?
  • SharedPreference 在使用过程中会出现卡顿情况吗?
  • 做过自定义 View 么,其中有哪儿些需要注意的点?
  • 自定义 View 中有哪儿些方法?
  • APK 瘦身如何做的?
  • Luban 压缩具体实现原理,我们可以自己写吗?
  • Luban 压缩如何保证压缩的同时,图片质量还清晰?
  • 平时怎么去学习的?
  • 你看过哪儿些库的源码?说一个较为擅长的吧?
  • Glide 如何和生命周期绑定的?
  • Glide 如何缓存的?
  • Glide 缓存内存分配大小是多少?
  • 整个 Glide 是用什么设计模式设计的?
  • Glide 网络请求用的是什么?
  • Glide 如何替换网络框架,比如切换 OkHttp?
  • 如果让你封装一个 App 底层网络,且它能随意切换,你会如何实现?

面试感受:

  • 面试官是个小姐姐,特别爱笑,可能是缓解尴尬吧,毕竟我太菜了。问的很细致,很全面。

2021-3-29 百度 - 小度大商业部

面试内容:

  • 自我介绍、学历/工作经验说明。
  • 求一个有序数组中最小绝对值。
  • HashTable 数据结构。
  • 简单说下散列表。
  • 扩容是什么?为什么要扩容?不扩容行不行?
  • 假设现在内存 200MB,需要读取 10 个文件获取用户搜索高频前五个关键词,每个文件 1GB,你怎么操作?

面试感受:

  • 手撕算法,直接趴下。面完小度最大的感受是,并不是说算法、数据结构这些八股文没用,只是目前接触不到,存在即合理,还是要摆正自己心态。百度 hr 贼不错,很贴心,百度办公环境真好,传说中互联网工位百度最好,果然不一样。羡慕了,来个柠檬酸。
  • 回去复盘录音,各种嘈杂,面试官声音较低,有点听不清,只能靠着记忆去回想当时提问内容了,各位见谅~

2021-3-29 百家云

面试内容:

  • 简单介绍下你做 Android 的一个经历吧。
  • 简单说下 Activity 生命周期。
  • 日常工作中一般在 onCreate()、onStop()、onDestroy() 中会做什么操作?
  • 调用 onPause() 后一定会调用 onStop() 吗?在什么情况下调用 onPause() 不会调用 onStop()?
  • Activity 启动模式。
  • 你常用的 Intent Flag 有哪儿些?
  • 简单说下 Activity 的启动过程。假设 Activity A 通过 startActivity 方式启动 Activity B,那么在 A 中执行 startActicity B 到 B 中 onCreate() 方法期间,系统会执行哪儿些操作?
  • 你如何解决 Fragment 中 getActivity 为空的情况?
  • 自定义 View 中一般会在哪儿些方法中进行操作?
  • 简单介绍自定义 View 中的测量模式。
  • 在自定义 View 如何处理事件?
  • 简单介绍下 Android 事件分发机制。
  • ViewGroup 中嵌套了 View,目前实现效果如下,首先 View 进行消费事件,滚动到一定距离后让 ViewGroup 继续消费这个事件,如何处理?
  • 当子 View 不再消费此事件后,如何通知 ViewGroup 继续消费事件?
  • 组件化有使用过吗?
  • Android 中实现多线程的方法有哪儿些?
  • Handler 如何实现多线程?
  • 用过线程池吗?
  • AsyncTask 实现多线程的原理。
  • 多线程中如何实现线程同步?
  • 简单描述下你了解的 Handler。
  • sendMessage 到 handleMessage 期间发生了什么?
  • Http 和 Https 区别。
  • Https 加密流程。
  • 你对 Java 中垃圾回收机制算法了解有多少?
  • 简单说下 Android 中进程间通信方式。
  • AIDl 实现步骤。
  • 内存泄露发生的场景有哪儿些?
  • 你是如何检测内存泄漏的呢?
  • Android 中发生 ANR 的情况有哪儿些?
  • 如何调试 Android 中的 ANR?
  • OOM 会在什么情况下触发,如何避免?
  • 你对 App 作用哪儿些性能优化?
  • 你是如何对 Apk 进行瘦身?
  • 在布局 UI 方面做过哪儿些优化呢?
  • 针对布局优化,你会使用哪儿些工具进行检测?
  • 假设我现在有个列表,用于展示推送消息,你是如何保证列表不卡顿?

面试感受:

  • 电话沟通,不晓得啥情况,一卡一卡的,整的心态都崩溃了。问的很基础,很全面的,大部分内容都有涉及到。面试官很随和,中间因为断断续续整的心态波动了下,后期面试官给了一些中肯建议,蛮好的。公司新业务 ar 方向。

2021-4-9 百家云二面

面试内容:

  • 从哪儿过来的,住哪儿?自我介绍。
  • 博客写了多久了?为什么写博客?
  • 最近一家公司主要做什么 App,App 访问量多少?团队多大?
  • 应用商店上架流程大概是什么样子?
  • 谷歌是怎么检测你 App 有热更代码,有了解过吗?
  • 你的 App 做过性能测试么?或者性能优化,讲讲?
  • 直播用的哪儿家的。
  • 第一学历是什么?高中哪儿年毕业的。
  • 打工都干过什么?去过哪儿些地方。
  • 什么原因想让你去学的安卓开发?
  • 报的哪儿个机构,学了多久,贷款学的吗?
  • 函授最后是给本科证、学位证还是?大概多久能拿到学历?
  • 这个学历平时是如何学习的呢?这个模式是怎样的?
  • 个人职业规划是怎样的呢?
  • 平时下班后会干嘛呢?
  • 我看你现在蛮喜欢学习,为什么高中之后不继续读书呢?
  • 你现在的薪资待遇多少,期望多少?
  • 你现在公司规模多大?
  • 历任公司工资多少?
  • 为什么从第二家公司离职的呢?现在这家为什么想离职?
  • 你了解过我们公司么?你感觉如何?
  • 如果我们给你发 offer,薪资待遇能不能考虑(降低)下?

面试感受:

  • 面试官侧重学历方面,问的比较多,毕竟个人非本非专,只是一个成考在读状态,着实有点尴尬。面试官蛮不错的,聊了很多,其中个人部分回答有点失误,公司环境也不错,再走走就是大百度园区了,关键离家还近,三站地铁,走路 20 分钟。

2021-4-15 六零三(工具)

面试内容:

  • 自我介绍以及最近负责项目介绍。
  • App 使用什么架构,当初是如何进行选型?
  • 网络层使用什么?Retrofit 工作原理。
  • OkHttp 工作原理简单说下,如何发起请求、日常如何使用。有看过源码吗?
  • 图片使用的是什么库?有考虑过其他库吗?
  • 对动画了解多么?组合动画使用过么?
  • 常驻通知栏做过吗?
  • 通信用的是 Handler 还是 EventBus?
  • EventBus 可以传递 List 吗?
  • 自定义 View 简单说下。
  • 对组合控件的滑动冲突如何解决?
  • ScrollView 嵌套 ViewPager,会有什么问题?
  • 性能优化怎么做的?
  • 内存优化怎么做的?
  • 内存泄漏如何检测?

面试感受:

  • 首先技术聊完和人事小姐姐聊,公司规模不大。人事蛮漂亮的,声音贼好听。

2021-4-15 凯捷(外派奔驰)

电话沟通,断断续续。

hr 沟通是 Android 开发,面试官得到的是应聘 Android Team Leader。

问的蛮深的,可惜有些没记住,录音文件 gg 了。

2021-4-20 唯医骨科

公司规模蛮大的,环境不错。开会较为激烈,哈哈哈嗝,在外面听的有点慌慌。一面之后就是客户端负责人面试,有点无语,当初约面试就和 hr 沟通过学历问题,再三确认没事后来约面试,随后客户端负责人了解完之后直接开启暴打模式…

一面面试内容:

  • 简单自我介绍。
  • Flutter 做了什么功能,描述大概什么业务方向。
  • 简单说下你在启动、瘦身方面的一个优化经验。
  • 项目用过组件化吗?
  • 你是怎么针对你们项目进行模块化拆分改造?
  • 你现在所负责的项目编译一次时间大概多久,有没有尝试做过一些优化?
  • 你对优化构建速度有什么想法?
  • 简单说下 Glide 原理。
  • 一张图片是如何被 Glide 加载到 ImageView,这个流程你了解过吗?
  • 简单说下 Glide 缓存。
  • 假设现在有张图片分辨率为 1980x720,在电脑内存中占用 2m,那么当他将这个图片加载到内存中,此时图片占用多少内存。
  • 子线程如何刷新 UI?
  • 进程间通讯方式?
  • 在项目中原生和 js 如何交互的?
  • 你了解 js 和原生交互实现原理吗?
  • 假设现在原生需要提供 js 方法,你会怎么操作?
  • 热修复使用过吗?它的原理是什么?
  • 工作中用到过 hook 吗?主要用于哪儿些地方?
  • hook 原理是什么?
  • 一个类是怎么加载的?
  • 在工作中如何收集线上错误异常呢?
  • 如果说我让你实现埋点收集,你会如何设计?
  • Android 中是如何拦截到 Crash?具体怎么操作?
  • 推送用的是什么?
  • 简单说下责任链模式。
  • 公司是外包吗?大概是什么性质,简单聊一下。
  • 如果你自己给自己定级的话,你觉得你在初中高哪儿个级别?

客户端负责人面试内容:

  • 简单自我介绍。
  • 团队规模以及人员配比情况。
  • 产品方面如何进行落地?
  • 离职原因、学历问题说明。
  • 为啥没上大学…
  • 介绍下最近做的项目以及项目类型。
  • 你主要负责开发哪儿个项目中比较重要的模块,简单介绍下?
  • 直播怎么做的?
  • 自己负责的项目有没有遇到过一些技术难点?
  • 举个例子,你做的哪儿块能体现你的技术能力。
  • 你的缓存是在什么时候进行缓存的呢?
  • 为什么会用到 MMKV,从实际角度出发,不用 MMKV 会怎样?
  • 逆向是如何做的?
  • 你们目前项目使用什么框架?简单描述下架构。
  • 项目中你们有写过多进程吗?
  • 假设现在让你从进程 A 往进程 B 发消息,你会怎么做?
  • 设计模式了解过吗?设计模式有哪儿几种类型?
  • 网络相关有了解吗?假如我现在发起一个 http 请求,它背后都做了哪儿些操作?
  • UDP、TCP 底层了解吗?底层链路是怎样的?
  • 一个 http 包是怎么发出去的?

面试感受:

  • 有点屈辱,面试完眼都红了,和老大聊完之后,也理解了。毕竟学历不过关,技术一定要深度,人家才能不在乎我学历,学历不行,技术没达到那个深度,人家为啥要我?打铁还需自身硬呐。
  • 能明显感受到一面面试官友好性,和大佬进行面对面相互交流挺好。可惜是个人未能达到客户端负责人要求的技术深度。

2021-4-20 平行未来

面试内容:

  • 自我介绍,公司、团队介绍、人员配比情况,简单说下项目情况,学历情况说明。
  • 直播用的哪儿家?有看过源码或者优化吗?
  • 就你一个 Android 会不会感觉孤独?
  • 离职原因是什么?
  • 您擅长哪儿些?
  • 说下如何进行瘦身?
  • 微信资源压缩,如果让你实现,你能实现吗?
  • 微信资源压缩原理是什么?
  • 启动优化过哪儿些内容?
  • 内存做过哪儿些优化?
  • 异步实现方式有哪儿些?
  • 简单说下 Handler。
  • 在一个线程中,可以创建多个 Handler 吗?
  • 一个线程中有两个 Handler,那么它有几个消息队列?
  • 消息队列中如何判断当前消息是归属于哪儿个 Handler 得呢?
  • 我能在子线程中创建一个 Handler 吗?
  • 子线程中为什么可以弹 Toast?
  • Looper 更深层次原理你了解吗?
  • 自定义 View 做过哪儿些?
  • 假设自定义 iOS 进度对话框,转圈使用逐帧动画,那么在什么时候销毁呢?
  • 两种实际业务考察以及最终布局考察。

面试感受:

  • 老哥人不错,个人对基础知识掌握不够,还不深入,停留表面,就好像老大说的,仅仅掌握技术层面上的一层油,深入就完蛋。

2021-5-10 立达智胜(工具组)

面试内容:

  • 简单自我介绍、当前工作情况(在职?)
  • 项目为什么做的类型这么多,前端小程序、Android、Flutter?
  • 简单说下 Handler,个人理解、使用流程等。
  • Handler sendMessage 到 Message,它中间经历了一个什么过程?
  • Activity 生命周期。
  • A Activity 打开 B Activity,假设 A 现在到了 onResume() 跳转会经历哪儿几个生命周期?假如我现在在 B Activity 点击返回呢?
  • 你了解 Activity 的渲染过程吗?
  • MeasureSpecs 有了解过吗?
  • View 如何获取到当前大小呢?假设我现在设置的 warp_content,它是怎么拿到 TextView 具体的大小呢?
  • MVC、MVP 以及 MVVM 区别是什么?
  • MVP 和 MVVM 本质区别在于什么?
  • MVP + Databinding 等同于 MVVM 吗?
  • 你知道 Databinding 中的注解是什么时候注入的,它是怎么运行的?
  • Databinding 注解你知道什么时候生成的吗?
  • Java 注解有所了解吗?
  • 从架构层次来讲,MVP、MVVM 有什么区别吗?
  • 我可以在子线程中更新 UI 吗?
  • 假设我现在有个 Button,点击时候开始一个 Thread,并且在 Thread 中去更新 Button text,可以更新吗?
  • ViewRootImpl 什么时候被创建?
  • Android 中动画的估值器和插值器如何配合工作的?
  • Apk 瘦身主要从哪儿几个方面入手的?
  • 微信压缩实现原理是什么?
  • MMKV 和 SharedPreferences 有什么区别?为什么使用 MMKV?
  • 当使用 SharedPreferences,通过 get 获取数据流程是什么样?拿到数据后它放在哪儿了呢?

面试感受:

  • 面试官蛮不错的,上来介绍了岗位定位、职责。面试官源码层研究蛮深入,很 nice。

2021-5-10 微淼财商(教育/电商)

面试内容: