腾讯移动客户端一面面经

项目与经历
1.请做一个简单自我介绍。
2.这个项目是研究生项目吗?你有 Android 开发经验吗?
3.为什么你们项目要使用 KMM / Compose Multiplatform 做跨平台?
4.你提到的加密锁代码主要工作是什么?
Android 客户端基础
5.Android 四大组件有哪些?各自用途是什么?
6.除 Activity 之外,实际开发一个界面还会涉及哪些东西?
7.BroadcastReceiver 通常有几种注册方式?什么时候使用动态注册?
8.App 内跨组件 / 跨模块的事件通知是怎么做的?
协程、异步与 Compose
9.协程是什么?它和进程、线程是什么关系?
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?如果不赋默认值会有什么问题?
#我的求职进度条# #实习#
全部评论

相关推荐

点评被问穿了,项目用点评的可以看,最近一直看Agent了,点评都忘了,回答很烂,但是面试官人很好,一直在教我怎么思考,怎么做技术选型,面试都不白面啊1.先讲一下你的项目的架构,怎么组织的,为什么这样组织2.多级缓存怎么做的,考虑了哪些缓存一致性问题,多个服务器本地缓存、redis缓存、DB之间数据一致性怎么解决3.旁路缓存太low了,而且你是高并发,并不能很好的解决这个问题,面试官举例了很多数据一致性实现方案4.秒杀问题,redis做预扣减,问题在哪里5.宕机了你怎么解决,容灾处理之后,还是有一部分数据丢失了你该怎么办6.对账补偿之后还是有一部请求的数据丢失了,这时候怎么办?7.redis一直宕机起不来,甚至你的容灾策略都出问题了,你该怎么办8.为什么采用kafka?9.你说的这些点RocketMQ也能做,RabbitMQ也能做,甚至redis stream也能做,为什么不用这些?10.你选kafka,kafka有什么缺点?11.共同关注计算,5000量级耗时多少,10万,100万呢?12.对于两个个亿万粉丝的大V,共同关注计算该怎么优化,用什么技术选型13.除了分页还有别的吗,在底层做优化?14.商户搜索是怎么做的,都包含哪些模式?15.这些模式的搜索用的什么技术,怎么优化搜索的方案能保证快,稳,准?16.布隆过滤器的缺点是什么?17.怎么优化,你是怎么重建的,存的数据量级有多大?18.布隆过滤器你用的哈希是几种,都是什么,为什么用这几种?
发面经攒人品
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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