当前位置: 首页 > news >正文

2024Android面试题与答案(2)

 Framework内核解析面试题汇总

  • Android中多进程通信的方式有哪些?
  • 描述下Binder机制原理?(东方头条)
  • 为什么 Android 要采用 Binder 作为 IPC 机制?
  • Binder线程池的工作过程是什么样?(东方头条)
  • AIDL 的全称是什么?如何工作?能处理哪些类型的数据?
  • Android中Pid&Uid的区别和联系
  • Handler怎么进行线程通信,原理是什么?(东方头条)
  • ThreadLocal的原理,以及在Looper是如何应用的?(字节跳动、小米)
  • Handler如果没有消息处理是阻塞的还是非阻塞的?(字节跳动、小米)
  • handler.post(Runnable) runnable是如何执行的?(字节跳动、小米)
  • Handler的Callback存在,但返回true,handleMessage是否会执行?(字节跳动、小米)
  • Handler的sendMessage和postDelay的区别?(字节跳动)
  • Looper.loop会不会阻塞主线程?
  • Looper无限循环的阻塞为啥没有ANR
  • Looper如何在子线程中创建?(字节跳动、小米)
  • Looper、handler、线程间的关系。例如一个线程可以有几个Looper可以对应几个Handler?
  • 子线程发消息到主线程进行更新 UI, 除了 handler 和 AsyncTask, 还有什么
  • IdleHandler是什么?怎么使用,能解决什么问题?
  • Android 系统启动流程
  • Zygote进程的启动流程
  • 为什么zygote没有采用binder快进程通信
  • 说说APP的界面如何绘制到屏幕上的,简单聊聊window的层级结构树
  • 你熟悉input吗?在activity的oncreate的方法中做耗时操作会不会产生ANR,在onclick的方法耗时会不会产生ANR,简单聊聊

Android组件内核面试题汇总

  • Acitvity的生命周期,如何摧毁一个Activity? (美团)
  • Activity的4大启动模式,与开发中需要注意的问题,如onNewIntent() 的调用
  • Intent显示跳转与隐式跳转,如何使用?(美团)
  • Activity A跳转B,B跳转C,A不能直接跳转到C,A如何传递消息给C?(美团)
  • Activity如何保存状态的?
  • 请描诉Activity的启动流程,从点击图标开始。(B站)
  • Service的生命周期是什么样的?
  • 你会在什么情况下使用Service?
  • Service和Thread的区别?
  • IntentService与Service的区别?
  • ContentProvider如何自定义与使用场景是什么?
  • BroadcastReciver的静态注册与动态注册的区别?
  • 广播的分类与工作原理
  • 什么是有序广播?
  • 介绍一下Android中的Context?
  • Fragment的生命周期? (美团)
  • Fragment的构造函数为啥不让传参?(B站)
  • Fragment add与replace的区别,分别对Fragment的生命周期影响(美团)
  • 如何判断一个 APP 在前台还是后台?
  • 说Activity、Intent、Service 是什么关系...

程序性能优化与数据持久化面试题汇总

  • 一张图片100x100在内存中的大小?(字节跳动)
  • 内存优化,内存抖动和内存泄漏。(东方头条)
  • 什么时候会发生内存泄漏?举几个例子(美团)
  • Bitmap压缩,质量100%与90%的区别?(东方头条)
  • TraceView的使用,查找CPU占用(东方头条)
  • 内存泄漏查找 (酷我音乐)
  • Android四大组件(以及Application)的onCreate/onReceiver方法中Thread.sleep(),会产生几个ANR?(美团)
  • 当前项目中是如何进行性能优化分析的
  • 冷启动、热启动的概念(酷我音乐)
  • 优化View层次过深问题,选择哪个布局比较好?(美团)
  • 为何要用 ContentProvider?它与 sql 的实现上有什么区别?
  • app对内存是如何限制的? 应该如何合理使用内存?
  • 为什么冷启动会有白屏黑屏问题?
  • 如何对apk进行瘦身
  • 说下冷启动与热启动是什么, 区别, 如何优化, 使用场景等
  • LeakCanray 2.0为啥不需要在application里调install?(B站)
  • 如何避免大图片 OOM
  • 怎样检测函数执行是否卡顿 (字节跳动)
  • ANR 线上问题如何监控(滴滴)
  • Android 有哪些存储数据的方式?

开源框架面试题汇总

  • 组件化在项目中的意义(阿里)
  • 组件化中的ARouter原理(阿里)
  • 谈一下你对APT技术的理解(美团)
  • 谈谈Glide框架的缓存机制设计(B站)
  • 谈谈你对Glide生命周期的理解(腾讯)
  • 项目中使用Glide框架出现内存溢出,应该是什么原因?(美团)
  • 谈谈OkHttp框架的原理(B站)
  • Android如何发起网络请求,你有用过相关框架码?OkHttp框架解决了你什么问题?(美团)
  • RxJava框架线程切换的原理,RxJava1与RxJava2有哪些区别?
  • 谈谈LiveData的生命周期是怎么监听的? (B站)

未完待续.......

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 三种tcp并发服务器实现程序
  • 【C#】【EXCEL】Bumblebee/Components/Analysis/GH_Ex_Ana_CondBetween.cs
  • WPF—资源的使用
  • 速盾:整站加速和cdn的关系是怎样的?
  • 设置视图的宽高
  • day35-测试之性能测试JMeter的测试报告、并发数计算和性能监控
  • 数据结构,顺序表和单向链表(一对一)
  • maven引用项目内的jar包
  • Unity3D 屏幕适配详解
  • 【Sceneform-EQR】通过filament(gltfio)加载gltf模型动画(Filament使用Animator)
  • 【一起学Rust | 框架篇 | Tauri2.0框架】rust和前端的相互调用(前端调用rust)
  • ElasticSearch7.12.1详细安装
  • hdfs的慢盘检测
  • 浏览器插件利器--allWebPluginV2.0.0.18-alpha版发布
  • 快速学习安装使用etcd
  • 30秒的PHP代码片段(1)数组 - Array
  • centos安装java运行环境jdk+tomcat
  • JavaScript的使用你知道几种?(上)
  • Laravel Mix运行时关于es2015报错解决方案
  • Median of Two Sorted Arrays
  • react 代码优化(一) ——事件处理
  • SpiderData 2019年2月13日 DApp数据排行榜
  • Spring思维导图,让Spring不再难懂(mvc篇)
  • 简析gRPC client 连接管理
  • 微信开源mars源码分析1—上层samples分析
  • ​Distil-Whisper:比Whisper快6倍,体积小50%的语音识别模型
  • ​力扣解法汇总1802. 有界数组中指定下标处的最大值
  • # AI产品经理的自我修养:既懂用户,更懂技术!
  • #pragma data_seg 共享数据区(转)
  • (2024)docker-compose实战 (8)部署LAMP项目(最终版)
  • (7) cmake 编译C++程序(二)
  • (C#)Windows Shell 外壳编程系列4 - 上下文菜单(iContextMenu)(二)嵌入菜单和执行命令...
  • (NO.00004)iOS实现打砖块游戏(九):游戏中小球与反弹棒的碰撞
  • (二)linux使用docker容器运行mysql
  • (附源码)apringboot计算机专业大学生就业指南 毕业设计061355
  • (南京观海微电子)——I3C协议介绍
  • (十六)一篇文章学会Java的常用API
  • (一)十分简易快速 自己训练样本 opencv级联haar分类器 车牌识别
  • (转)甲方乙方——赵民谈找工作
  • .[hudsonL@cock.li].mkp勒索病毒数据怎么处理|数据解密恢复
  • .Net Core和.Net Standard直观理解
  • .NET 依赖注入和配置系统
  • .NET与java的MVC模式(2):struts2核心工作流程与原理
  • .net中调用windows performance记录性能信息
  • .考试倒计时43天!来提分啦!
  • /usr/local/nginx/logs/nginx.pid failed (2: No such file or directory)
  • [ 环境搭建篇 ] 安装 java 环境并配置环境变量(附 JDK1.8 安装包)
  • [120_移动开发Android]008_android开发之Pull操作xml文件
  • [145] 二叉树的后序遍历 js
  • [3300万人的聊天室] 作为产品的上游公司该如何?
  • [ASP.NET MVC]如何定制Numeric属性/字段验证消息
  • [ASP.NET 控件实作 Day7] 设定工具箱的控件图标
  • [C#]winform制作圆形进度条好用的圆环圆形进度条控件和使用方法
  • [C#]获取指定文件夹下的所有文件名(递归)
  • [Doc][px4][ros2][gazebo][yolov8]PX4-ROS2-Gazebo-YOLOv8