Android面试题

2020-02-17  本文已影响0人  梦里花落知多少_9ce8

2019年底互联网寒冬和2020年初新型冠病毒双重打击下的面试题总结

头条(西瓜视频团队)

1. 浏览器中输入www.baidu.com发生了什么?详细的流程

2.Flutter和Rn 对比有什么异同或者优势?渲染区别

3. 你们Flutter项目里状态管理如何做的?

4. Flutter的Widget局部刷新如何实现的?原理是什么

5. Flutter里实现一个贝塞尔曲线是如何做的?原理是什么?

6. 说说MVVM,有什么优势

7. 反转链表,分段反转链表

8. 手写单利模式(静态内部类方式)

9. Int[] a,下标i<j,找到任一一对ai<aj,以数组的形式返回i,j。(a可能是一个降序数组,找不到满足条件的下标)

10. 考察设计:设计开屏广告,尽量详细写出类及类中的方法,以及策略

11.设计实现一个收集ANR异常的组件?如何实现?上传策略?

12. [endif]Handler原理

13. 数据库两个表如何实现左联

14. httP和https 的区别

15. 内存优化,内存泄漏,性能优化

16. 一个View什么时候会接收到Cancle事件

爱奇艺

1. Thread1、thred2、thread3全部执行结束后再执行thread4,如何实现

2. Java中String s=”abc”及String s=new String(“abc”)的区别

3. startService和bindService生命周期的区别?

startService然后bindServce,只调用stopService或者unBindService生命周期会执行哪个方法,service会被销毁吗

4. 垃圾回收?垃圾回收算法?GC root都有哪些对象?

5. 策略模式和命令模式有什么区别?说一下代理模式

6. 讲一下MVVM

7. ViewModel原理及源码

8. AMS干什么?WMS干什么的?

9. 内存泄漏、内存溢出、性能优化

10. Binder通信机制

11. Handler消息机制,为什么死循环不会卡死线程?

茄子快传

1. Thread1、thred2、thread3全部执行结束后再执行thread4,如何实现

2.按A->B->C顺序启动Activity,如何实现在C中启动A同时B和C不在任务栈中,并如何传数据到A中

3. 手写单利模式

4. 事件分发

(1)父控件是RecycleView,v1是RecycleView的一个item,如何实现左右滑动v1响应,上下滑动RecycleView响应

(2)一个父控件包含RecycleView和v1,RecycleView撑满父控件,v1(例如高100dp)在RecycleView上,如何实现左右滑动v1响应,上下滑动RecycleView响应

5. LinerLayout中包含两个view,宽为300dp,view1的layout_weight=1,vieW2的layout_weight=2,view1和view2的宽分别是多少?Layout_width需要设置成什么?Layout_width=“match_parent”会生效

6. sparsearray和hashmap相比优缺点?

7. 头条APP,首页tab快速滑动,如何保证优先加载最后停留页面的请求?

8. Fragmentpageradapter和 FragmentStatepageradapter 的区别及F1->f2->f3->f4滑动切换,F1生命周期有什么不同?

9. 项目中线程如何管理的,线程池是如何配置的?

10. 内存管理,内存泄漏,还做过什么性能优化

11. 做过httpS网络优化吗?如何防止中间人攻击

APUS

1. 讲一下Kotlin柯里化?

2. 流式编程

3. Binder驱动是什么时候初始化的,Server Manager是一个进程吗?Server Manager什么时候初始化的?如何找到Server Manager   IHandle

4. Handler相关对象及对象之间的关系?Handler 和LOOPER如何对应的

5. 广告业务设计与实现,做了哪些策略?如何设计?怎么实现的?预加载如何保证广告数据不浪费,请求回来不显示影响计费的问题?开屏广告各家SDK有什么相同和不同?有哪些优化?所有的广告都是统一策略吗?

6. MVVM实现,MVC到MVVM有什么提升?

7. 保活手段都有哪些?8.0以后基本都失效了

8. 如何在桌面直接弹出弹窗?涉及到权限

9. 做过锁屏相关的需求吗

10. 对gradle熟悉吗,gradle处理了一些什么

11. Apk打包流程优化

搜狗(智能语音笔团队)

三轮技术+一轮业务+一轮HR

1. 手写生产者消费者模式

2. 合并两个升序数据int[] a,int[] b

3. Binder通信机制

4. Handler消息机制及原理

5. 线程同步方式有哪些

6. 讲一下线程池

7. 进程和线程的区别

8. Wait和sleep的区别

9. ViewModel的原理

10. 为什么使用MVVM,有什么好处?

11. 事件分发机制,

12. 接口和抽象类的区别

13. View的绘制流程,父View是Match_parent,子view是worp_content,子view测量完是什么模式

虎牙直播(北京是新业务)

1. 多进程模式下sharprefrence有什么问题吗?如何避免?Commit和 apply的区别?

2. Databing实现原理

3. Evevtbus实现原理

4. 进程和线程的区别

5. Wait和sleep的区别

6. 锁的种类及区别

7. MVC、MVP、MVVM区别

伴鱼口语

1. 动态代理,Proxy.newProxyInstance三个参数代表的意义

2. 线程池有几个参数?分别代表什么意义?Android常用线程池有几种分别是什么

3. ActivityA->ActivityB,按返回键生命周期顺序

4. 事件分发机制

5. OKhttp缓存原理

6. View的绘制流程

7. 如何实现一个边长为宽度一半的自定义view

8. 笔试题

9. 内存泄漏怎么处理的

10. 性能优化做了哪些

猎豹移动(机器人团队)

binder一次通信最大是多少?4M

Binder使用中会遇到卡死情况吗

为什么使用binder机制(对比其他Linux ipc机制 优势)

binder通信的流程

binder通信数据传输具体流程

binder传参可以自定义对象吗

Binder传参序列化

广告skd介入都做了哪些机制?各家SDK广告缓存池,生产者消费者模式管理广告

讲一下mvvm怎么实现的,各个层的具体实现也问到了,请求及数据解析,http和https的区别,tcp三次握手,为什么三次而不是两次

Synchronize原理,其他同步有了解吗实现原理(重入锁及原子类)

handle消息机制,为什么主线程不会卡死,对,eople 机制了解多少

会RN及JS吗

flutter和rn有什么区别

做过哪些性能优化?内存泄露相关, Leakcanary的实现原理

怎么处理Anr?提到blockcanary就问它的实现原理

学过其他语言及最新技术吗

OkHTTP3拦截器原理

新东方在线

1. apk打包编译流程

2. Rxjava线程转换的原理

3. Ams干什么的?什么时候启动的

4. view绘制流程

5. AOP解决快速点击

6. 手写单利静态内部类的方式

Kotlin有什么优势

Android各个版本的特性或变化

上一篇下一篇

猜你喜欢

热点阅读