百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

Android高级/资深面试题(android 高级面试)

liuian 2025-04-01 19:47 64 浏览

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. 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各个版本的特性或变化

相关推荐

教你把多个视频合并成一个视频的方法

一.情况介绍当你有一个m3u8文件和一个目录,目录中有连续的视频片段,这些片段可以连成一段完整的视频。m3u8文件打开后像这样:m3u8文件,可以理解为播放列表,里面是播放视频片段的顺序。视频片段像这...

零代码编程:用kimichat合并一个文件夹下的多个文件

一个文件夹里面有很多个srt字幕文件,如何借助kimichat来自动批量合并呢?在kimichat对话框中输入提示词:你是一个Python编程专家,完成如下的编程任务:这个文件夹:D:\downloa...

Java APT_java APT 生成代码

JavaAPT(AnnotationProcessingTool)是一种在Java编译阶段处理注解的工具。APT会在编译阶段扫描源代码中的注解,并根据这些注解生成代码、资源文件或其他输出,...

Unit Runtime:一键运行 AI 生成的代码,或许将成为你的复制 + 粘贴神器

在我们构建了UnitMesh架构之后,以及对应的demo之后,便着手于实现UnitMesh架构。于是,我们就继续开始UnitRuntime,以用于直接运行AI生成的代码。PS:...

挣脱臃肿的枷锁:为什么说Vert.x是Java开发者手中的一柄利剑?

如果你是一名Java开发者,那么你的职业生涯几乎无法避开Spring。它如同一位德高望重的老国王,统治着企业级应用开发的大片疆土。SpringBoot的约定大于配置、SpringCloud的微服务...

五年后,谷歌还在全力以赴发展 Kotlin

作者|FredericLardinois译者|Sambodhi策划|Tina自2017年谷歌I/O全球开发者大会上,谷歌首次宣布将Kotlin(JetBrains开发的Ja...

kotlin和java开发哪个好,优缺点对比

Kotlin和Java都是常见的编程语言,它们有各自的优缺点。Kotlin的优点:简洁:Kotlin程序相对于Java程序更简洁,可以减少代码量。安全:Kotlin在类型系统和空值安全...

移动端架构模式全景解析:从MVC到MVVM,如何选择最佳设计方案?

掌握不同架构模式的精髓,是构建可维护、可测试且高效移动应用的关键。在移动应用开发中,选择合适的软件架构模式对项目的可维护性、可测试性和团队协作效率至关重要。随着应用复杂度的增加,一个良好的架构能够帮助...

颜值非常高的XShell替代工具Termora,不一样的使用体验!

Termora是一款面向开发者和运维人员的跨平台SSH终端与文件管理工具,支持Windows、macOS及Linux系统,通过一体化界面简化远程服务器管理流程。其核心定位是解决多平台环境下远程连接、文...

预处理的底层原理和预处理编译运行异常的解决方案

若文章对您有帮助,欢迎关注程序员小迷。助您在编程路上越走越好![Mac-10.7.1LionIntel-based]Q:预处理到底干了什么事情?A:预处理,顾名思义,预先做的处理。源代码中...

为“架构”再建个模:如何用代码描述软件架构?

在架构治理平台ArchGuard中,为了实现对架构的治理,我们需要代码+模型描述所要处理的内容和数据。所以,在ArchGuard中,我们有了代码的模型、依赖的模型、变更的模型等,剩下的两个...

深度解析:Google Gemma 3n —— 移动优先的轻量多模态大模型

2025年6月,Google正式发布了Gemma3n,这是一款能够在2GB内存环境下运行的轻量级多模态大模型。它延续了Gemma家族的开源基因,同时在架构设计上大幅优化,目标是让...

比分网开发技术栈与功能详解_比分网有哪些

一、核心功能模块一个基本的比分网通常包含以下模块:首页/总览实时比分看板:滚动展示所有正在进行的比赛,包含比分、比赛时间、红黄牌等关键信息。热门赛事/焦点战:突出显示重要的、关注度高的比赛。赛事导航...

设计模式之-生成器_一键生成设计

一、【概念定义】——“分步构建复杂对象,隐藏创建细节”生成器模式(BuilderPattern):一种“分步构建型”创建型设计模式,它将一个复杂对象的构建与其表示分离,使得同样的构建过程可以创建...

构建第一个 Kotlin Android 应用_kotlin简介

第一步:安装AndroidStudio(推荐IDE)AndroidStudio是官方推荐的Android开发集成开发环境(IDE),内置对Kotlin的完整支持。1.下载And...