meta app Android实习生一面面经

 1.自我介绍
 2.看到简历里提到做了启动优化,能具体说说吗
 3.任务编排是指什么,能说说吗
 4.recyclerView 的复用,这是什么
 5.那简历里提到跨列表复用,这个应该和普通的复用不一样吧,怎么实现的
 6.简历里提到基于 assetmanager 反射实现实时换肤,这个能讲一下吗
 7.我看到你简历里提到使用了 mvi 架构,能讲一下这个架构的数据流向具体是怎么样的吗
 8.flow 要在什么时候取消呢
 9.要自己去把握这个生命周期吗,还是说有现成的(lifecycleScope)
 10.讲到了生命周期,讲一下 onstop 和 ondestory 的区别
 11.触发 ondestory 的场景有哪些
 12.横竖屏切换会触发 ondetory 吗
 13.数据重新绑定到 UI 上那么这些数据通常应该存在哪里
 14.viewmodel 什么时候销毁呢
 15.协程与线程相比,协程的优势有哪些
 16.你说协程是一种管理线程的框架,能展开说说吗
 17.挂起函数的实现原理是什么,怎么挂起不消耗 cpu 的
 18.俩道算法题
 第一题:
 层序遍历二叉树
 第二题:
 字符串去重,给一个只有大写字母的 字符串,对字符串进行去重(也很简单,就是用一个 26 大小的数组存是否出现过该字符的信息就行)。
总结:主要是拷打简历和基础。面试官人很好,基本没有压力,没答出来还会笑一笑😆

后续:二面挂了😇
全部评论
过了吗
点赞 回复 分享
发布于 05-19 10:18 河北
怎么看起来这个题目挺难的额。
点赞 回复 分享
发布于 05-15 17:22 北京

相关推荐

项目与经历 1.请做一个简单自我介绍。2.这个项目是研究生项目吗?你有 Android 开发经验吗?3.为什么你们项目要使用 KMM / Compose Multiplatform 做跨平台?4.你提到的加密锁代码主要工作是什么?Android 客户端基础5.Android 四大组件有哪些?各自用途是什么?6.除 Activity 之外,实际开发一个界面还会涉及哪些东西?7.BroadcastReceiver 通常有几种注册方式?什么时候使用动态注册?8.App 内跨组件 / 跨模块的事件通知是怎么做的?协程、异步与 Compose9.协程是什么?它和进程、线程是什么关系?10.协程和线程最大的差异是什么?11.Android 中处理异步任务通常会用哪些类或方式?例如网络请求后如何更新界面?12.Compose 中 StateFlow 状态变化是如何触发重组的?13.除了协程 + Flow,还了解哪些界面更新方式?工程安全与打包14.ProGuard / R8 混淆的主要作用是什么?除安全外还有什么作用?15.如果代码里有密钥,通常应该怎么处理?混淆能不能保护密钥?进程与通信16.你们这个 Android 应用有几个进程?17.主进程和后台进程是否需要通信?具体通过什么方式通信?计算机基础:数据结构与设计模式18.你比较熟悉哪些数据结构?19.数组和链表最核心的区别是什么?数组查询为什么快?如果不知道元素位置,两者还有差异吗?20.你了解哪些设计模式?例如工厂模式、单例模式。并发与网络21.什么是死锁?产生死锁的四个必要条件是什么?22.实际开发中如何尽可能避免死锁?23.在浏览器输入 www.qq.com 并回车后,网页渲染出来之前大概会经历哪些网络协议 / 流程?24.HTTP 和 HTTPS 的默认端口号分别是多少?25.视频会议通常更适合 TCP 还是 UDP?为什么?26.TCP 三次握手的流程是什么?为什么需要三次,两次不行吗?算法与代码27.现场写一个链表反转算法,并说明思路。28.ListNode 构造函数里为什么给 next 赋 null?如果不赋默认值会有什么问题?
查看29道真题和解析
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务