0、自我介绍
1、RePlugin原理,VirtualAPK。怼的特别深……
2、为什么进程消耗比线程大。从进程切换和线程切换还有PCB、TCB,进程线程相对关系讲了讲。
3、跨进程通信方式,互斥量、信号量、管程、管道、Binder机制、Binder对象、AIDL、网络、共享文件。然后还问我有没有……我就懵逼了
4、前序中序,输出后序。LZ方法比较蠢,直接构造树然后后序遍历输出。
5、什么是ANR,为什么需要ANR。Activity5秒、BroadcastReceiver10秒、Service20秒。面试官引导我往主线程去说。
6、内存泄漏,内存泄露的检测工具。Handler泄露Activity,然后说了一下从ThreadLocal->Looper->MessageQueue->Message->handler->Activity的泄露链条。避免内存泄露的方式。软引用或者弱引用。当时面试官还混淆了一下OOM和MemoryLeak,还好被我机智的识破了。
7、EventBus原理。围绕着两个HashMap说了一下register、unregister、post方法。
8、事件分发流程。说了从Activity->mDecorView->Viewgroup->view的过程以及onDispatchTouchEvent/onInterceptTouchEvent/onTouchEvent三个方法。
9、APP饱和机制。不会,我强烈怀疑我听错了,说的可能是APP保活……那就……哎哟我去……那就很多了呀,后台Service拉活,还有最骚的是腾讯之前的,在屏幕上显示一个像素点。
10、Socket编程。好久之前了……不会
11、反问。问了一下加班,问了一下内存泄漏有什么工具……
卧槽……效率有点高,现在就约复试了
HR面(20分钟):
0、自我介绍。
1、英语四六级。
2、在校成绩。
3、秋招到春招这段时间的安排。
4、目标公司、现有offer情况。
5、学习方式。
6、兴趣爱好。
7、职业规划。
8、工作地点。
9、反问。
感觉有点凉,都没有讨论薪资……
很神奇,周六收到了offer。看来不讨论薪资是VIVO特色
全部评论
(16) 回帖