前言

如果你想要一个月速成程序员,那么这篇文章不适合,如果你仅想要在 IT 圈“耍酷”,那你也不需要研读,如果你执着询问“退化”成为一名程序猿有啥捷径,那我只能告诉你,此路不通!

不可否认,这是个浮躁的社会,程序猿干的是个专注活,这是个多元化的社会,程序猿面对的却是枯燥、单一的界面。所以,当你踏进这个行业,就注定要“看破红尘”、“一心皈依”,一步一个脚印地走完。

下面是3个大厂音视频面试题(一二三面):

1.泛型有什么优点?

2.动态代理有什么作用?

3.拉圾回收的 GCRoot 是什么?

4.Handler 机制了解吗?一个线程有几个 Looper?为什么?

5.你了解协程吗?协程有什么作用?可以完全取代 rxjava 吗?

6.你们用的什么消息通信机制

7.你的项目有什么难点?介绍一下?

8.算法题,二叉树最长结点集合

猿辅导 2 面

1.你们项目中的难点是什么?

2.编译期注解处理的是字节码还是 java 文件

3.你在项目中有用到什么设计模式吗?

4.ARouter 的原理是怎样的?

5.插件化的原理是怎样的?

6.算法题,K 个一组反转链表

7.广播与 RxBus 的区别,全局广播与局部广播区别

猿辅导 3 面

1.你们项目中有什么难点?

2.@JavaScriptInterface 为什么不通过多个方法来实现?

3.为什么不利用同步方法来做 jsBridge 交互?同步可以做异步,异步不能做同步

4.网络封装怎么实现?

5.算法题,不同面值的几个硬币,怎么求满足条件的最小值

1.说说 HashMap 的原理

2.说说 Java 的内存分区

3.讲讲你对垃圾回收机制的了解,老年代有什么算法?

4.说说你对 volatile 字段有什么用途?

5.说说事件分发机制,怎么写一个不能滑动的 ViewPager

6.说说你对类加载机制的了解?DexClassLoader 与 PathClassLoader 的区别

7.说说插件化的原理,资源的插件化 id 重复如何解决?

8.mvp 与 mvvm 模式的区别是什么?

9.JetPack 组件用过哪些?lifeCycle 的原理是什么?如果在 onStart 里面订阅,会回调 onCreate 吗?

10.单例模式有什么缺点?

11.说说 App 的启动过程,在 ActivityThread 的 main 方法里面做了什么事,什么时候启动第一个 Activity?

12.说说你对 Handler 机制的了解,同步消息,异步消息等

13.说说你对屏幕刷新机制的了解,双重缓冲,三重缓冲,黄油模型

14.onCreate,onResume,onStart 里面,什么地方可以获得宽高

15.为什么 view.post 可以获得宽高,有看过 view.post 的源码吗?

16.attachToWindow 什么时候调用?

17.DataBinding 的原理了解吗?

滴滴一面

1.JVM 类加载机制了解吗,类什么时候会被加载?类加载的过程具体生命周期是怎样的?

2.Handler 内存泄漏的 GCRoot 是什么?

3.动画里面用到了什么设计模式?

4.OkHttp 里面用到了什么设计模式?

5.OkHttp 连接池是怎么实现的?里面怎么处理 SSL?

6.泛型为什么要擦除?kotlin 的泛型了解吗?泛型的 pecs 原则

7.同步屏障

8.性能优化做过什么工作?

9.RecyclerView 的缓存结构是怎样的?缓存的是什么?cachedView 会执行 onBindView 吗?

10.RecyclerView 嵌套 RecyclerView,NestScrollView 嵌套 ScrollView 滑动冲突

11.ViewGroup 在 Action_Move 时 onIntercept 返回 true,事件怎么传递

12.Launcher 启动图标,有几个进程?

13.JMM 可见性,原子性,有序性,synchronized 可以保证什么?

14.源码中有哪里用到了 AtomicInt

15.AQS 了解吗?

16.Activity 内 LinearLayout 红色 wrap_content,包含 View 绿色 wrap_content,求界面颜色

17.ViewModel 的使用中有什么坑?

18.有用 DSL,anko 写过布局吗?

19.HashMap 查找的时间复杂度是多少?

20.阿里编程规范不建议使用线程池,为什么?

21.四种线程池原理?

22.了解哪些算法?

23.IdleHandler 用过吗?

滴滴二面

1.如何封装一个字符串转数字的工具类

2.如何求当前 Activity View 的深度

3.多进程怎么实现?如果启动一个多进程 APP,会有几个进程运行?

4.反射可以反射 final 修饰的字段吗?

5.Activity 与 AppCompactActivity 区别,Activity 会打包到包里面去吗?

6.如何让两个线程循环交替打印

7.怎么中止一个线程,Thread.Interupt 一定有效吗?

8.动画连续调用的原理是什么?

9.做过一些 SDK 的操作吗?

10.协程可以在 Java 项目中使用吗?

11.SharedPreference 原理?读取 xml 是在哪个线程?

12.了解 APK 打包的过程吗?

13.class 文件的组成?常量池里面有什么内容?

14.自动装箱发生在什么时候?编译期还是运行期

15.bugly 日志收集的原理是什么?

16.启动优化做过什么工作?如果首页就要用到的初始化?

17.DataBinding 原理

滴滴三面

1.插件化的原理是什么?有没有什么非运行时插件化的解决方案?

2.ARouter 的原理是怎样的?注解处理器是处理 java 还是字节码

3.java 和字节码有什么区别?

4.kotlin 空安全的原理是什么?

5.性能优化做过什么工作?有用过什么工具?有没有精确测量的工具?

6.kotlinc 与 javac 编译字节码有什么区别?

7.你在团队中是怎样一个角色?

8.你有没有做什么推进项目的工作

9.说说热修复的原理?

安卓音视频开发,经典面试题相关推荐

  1. 音视频开发大厂面试题(快手、百度、字节)

    目录 1.快手面试 2.百度面试 3.字节面试 一.快手面试总结 面试岗位:音视频优化体验岗 一面: 开场自我介绍 问我们视频封装格式是什么?我答hls ts 和 fmp4都有 之后问了ts的结构是什 ...

  2. 安卓音视频开发(1)—— 三种方式绘制图片

    作为应届生,刚入职公司,现在想从零开始学习一个全新的领域--音视频开发,仅此记录一下. ImageView绘制图片 这种常规的绘制图片方式,简单粗暴. String pathName = Enviro ...

  3. 安卓音视频开发(4)—— 视频录制、预览、解析与封装合成

    前言 这节学习视频开发的一些基础操作,具体包括使用MediaRecorder来录制视频,采集视频数据并保存为mp4文件.我学习的教程里使用的是Camera,通过回调来获取到NV21数据,这个获取的数据 ...

  4. 安卓音视频开发!Android开发还会吃香吗?大厂直通车!

    导语 又到了面试季,自己也不得不参与到这场战役中来,其实是从去年底就开始看,Android的好机会确实不太多,但也还好,3年+的android开发经历还是有一些面试机会的,不过确实不像几年前门槛那么低 ...

  5. 安卓音视频开发,字节跳动Android实习面试凉凉经,年薪超过80万!

    前言 前几天去参加了一场面试.面试的题目大多很基础,有一道关于埋点的问题,面试官问我如果不用第三方SDK进行埋点,自己埋点的话,如何减少埋点对业务代码的入侵. 当时没想太多,就说创建一个 BaseVi ...

  6. 安卓音视频开发!为了跳槽强刷1000道Android真题,大厂直通车!

    为什么要做职业规划? 我们先聊聊第一个话题,为什么要做职业规划? 首先,我们要知道职业规划是什么,也就是如何持续选择适合自己发展的工作的过程. 职业规划其实就是对职业生涯乃至人生进行持续的.系统的.计 ...

  7. 【安卓】音视频开发入门

    文章目录 音视频开发学习思路 关于开发的思考 音视频开发的内容 采集 渲染 处理 传输 音频基础知识 基础概念 采样率(samplerate) 量化精度(位宽) 声道数(channels) 音频帧(f ...

  8. Android音视频开发:MediaRecorder录制视频

    简介 安卓api提供了Camera类控制相机捕获图像,在api21以后,安卓也提供了Camera2,Camera变得过时了,但为了兼容性,这里还是使用Camera. 对于录制视频,可以使用MediaR ...

  9. 音视频开发(十九):运算符重载、继承、多态、模版

    目录 类和对象的重要知识点 运算符重载 继承 多态 模版 一.类和对象的重要知识点 1.1 深拷贝与浅拷贝 浅拷贝:简单的赋值拷贝操作,拷贝构造 深拷贝:在堆区重新申请空间,进行拷贝操作 1.2 th ...

最新文章

  1. 难点电路详解之负反馈放大器电路(2)
  2. linux shell后台运行
  3. JavaScript 温故知新 00
  4. 关于Session接口的update方法主要有如下几点要注意
  5. ng-template和对应生成的注释
  6. 芬兰高性能图表控件-免费试用并提供技术支持
  7. 【转】.NET 的 WebSocket 开发包比较
  8. 分布式事务Seata的AT模式下两阶段提交原理
  9. 【会话推荐】ICDM论文:探索跨会话信息感知的推荐模型
  10. vnpy2.0安装后报错ModuleNotFoundError: No module named 'vnpy.api.ctp.vnctpmd'
  11. 【分享】终端命令工具 自动生成vue组件文件以及修改router.js
  12. Redis学习手册(主从复制)
  13. javascript实现页面自动刷新和自动跳转代码
  14. 营销传播“四个时代”与“八大理论”
  15. 弹窗代码大全 弹窗广告代码
  16. Windows 安装 KMS 与 MAK 的区别
  17. python语法元素测试_基于python全局设置id 自动化测试元素定位过程解析
  18. 英国AI初创企业OKRA获416万美元A轮融资
  19. Field II 超声声场仿真(3): 脉冲-回波响应(原理代码)
  20. 7_使用OGR模块操作矢量数据

热门文章

  1. Python学习小组微信群公告页面
  2. 【XSY2032】简单粗暴的题目 组合数
  3. MyBatis分页填充page对象
  4. [AHK]一键摘抄金句到Obsidian
  5. Pandas提速方案
  6. CSS中背景设置——渐变色和放射渐变
  7. 世界上的程序语言那么丰富,还不够吗?
  8. 【观察】vivo:为用户隐私持续“保驾护航”,久久为功筑牢数据安全防线
  9. 苹果系统笔记本更新PHP版本,mac如何升级系统版本
  10. 论文阅读:Adversarial Cross-Modal Retrieval对抗式跨模式检索