知乎Android开发面经——一面(挂面)

1、Thread Local

2、线程池的工作原理

3、Android的打包流程是什么样的,打包经过了哪些变化

​编译阶段:生成.class文件,使用D8生成Android虚拟机可运行的.dex文件,如果使用了AIDL,会生成对应的Java接口代码,资源编译,将res目录下的XML文件,编译成二进制的.flat文件。

​打包阶段:合并清单文件,合并资源,生成未签名的APK文件;签名阶段,生成签名密钥,使用apksinger签名,优化&对齐,使用Zipalign4字节对齐,最终生成APK。

4、A->B Activity生命周期变化

5、一个线程可以有几个handler,Looper对象呢,handler机制

6、recycler view 左滑删除是怎么实现的

​使用Item Touch Helper,在onSwoped中获取position,adapter执行removedItem和notifyItemRemoved,onMove方法中返回false去禁用他的拖动事件。

7、插装相关

8、注解相关

9、Shared Preference是线程安全的吗

10、MVVM和liveData

没问算法,整体面试下来一问三不知,社招岗,我是校招生,面完恶心透了,感觉面试官态度不太好,15分钟迅速结束,社招岗位谨慎点为好。
全部评论
校友,哪届的
点赞 回复 分享
发布于 04-23 14:57 湖北

相关推荐

07-13 20:10
门头沟学院 Java
2025.7.5时长:1h20min1. String ,string builder和string buffer它们的区别是什么2. 都适用于什么场景?或者你在开发时候什么场景使用3. 深拷贝和浅拷贝4. 深拷贝怎么实现5. jvm内存模型中,方法区,堆以及这个本地方法栈程序计数器他们的各自作用是什么?6. jvm内存管理的工作过程7. hashset和hashmap区别?如何处理哈希冲突8. concurrentHashMap在jdk1.7和1.8的实现区别9. 有看过具体的代码实现吗10. 进程间通信方式。包括线程间通信11. 进程和线程的区别12. 一个进程可以有多少个线程13. 物理内存和虚拟内存的区别14. 32位CPU架构对它的一个进程的虚拟内存是多大?15. redis就它的这个缓存穿透击穿和雪崩这个概念是什么意思?怎么去解决这几个问题?16. redis持久化机制17. 怎么去选择呢项目:1. 介绍一下大概做的这个周期,以及整体你在这里面这个架构的设计,包括中间遇到一些问题如何解决的,以及最后的一个结果怎么样。2. 过程中有遇到什么问题和挑战?算法:1. 链表反转2. 极大值字符串相减(要处理减数比被减数小的情况)其他:1. 平时的一个学习方法,学习方式什么样?2. ai这块有关注吗3. 为什么大二就想出来实习4. 面试准备了多久反问:你认为有什么可以在进步的地方或者或者不足的地方?(面试官叫我自己评价一下,还要我给自己打分)进入后主要负责哪一块(然后面试官问我对安卓了解多少,还问go了解吗?说具体要再和一二面面试官对接一下)
查看25道真题和解析
点赞 评论 收藏
分享
评论
点赞
10
分享

创作者周榜

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