首页 > 其他分享 >2023年Android中高级最全面试题(含大厂原题+解析)

2023年Android中高级最全面试题(含大厂原题+解析)

时间:2023-08-18 18:06:48浏览次数:45  
标签:面试题 Java 原题 Activity 实例 2023 Handler Android

前言

又快要到了一年一度的金九银十黄金跳槽时节,也是互联网大厂疯狂招人的时期,现在应该有很多Android程序员已经按耐不住了。但是现在网上的面试题资料太多了,而且有些面试题已经过时甚至是漏洞百出。今天结合自己前段时间的面试经历和几位大厂大佬交流讨论总结出这份2023年Android中高级最全面试题来帮助大家轻松搞定offer。话不多说,直接上干货!!!

面试题

一、Activity的启动方式

standard 不管有没有已存在的实例,都生成新实例 singleTop 如果发现有对应的Activity实例位于栈顶,则重复利用,否则创建实例 singleTask a)栈内复用,复用时具有clearTop机制 b)single taskAffinity in task singleInstance a)启用一个新的栈结构,将Activity放置于栈结构中,并保证不会有其 它Activity实例进入 b)方便多个应用共享全局唯一的实例

二、Handler防止内存泄露

原因 a).声明Handler为静态类,同时对于Activity的this引用封装成WeakReference 否则会导致匿名类引用了外部Activity,导致Activity不能被回收 b).如果这时对手机硬 件进行横竖屏切换,讲导致Activity被创建,却不能被回收

措施

a).public void onDestroy()
{
mHandler.removeCallbacksAndMessages(null);
}
static class MyHandler extends Handler {
WeakReference<Activity > mActivityReference;
MyHandler(Activity activity) {
mActivityReference= new WeakReference<Activity>(activity);
}
@Override
public void handleMessage(Message msg) {
final Activity activity = mActivityReference.get();
if (activity != null) {
mImageView.setImageBitmap(mBitmap);
}
}
}

三、SoftReference跟WeakRefrence的区别

WeakRefrence => 与强引用对象的生命周期一致,不会增加引用计数 SoftReference => 内存不足时才进行回收

四、如何避免OOM

减少内存对象的占用

  1. ArrayMap/SparseArray代替hashmap
  2. 避免在android里面使用Enum
  3. 减少bitmap的内存占用
  4. 减少资源图片的大小,过大的图片可以考虑分段加载

五、Devik 进程,linux 进程,线程的区别

Dalvik进程。 每一个android app都会独立占用一个dvm虚拟机,运行在linux系统中。 所以dalvik进程和linux进程是可以理解为一个概念。

六、Framework 工作方式及原理,Activity 是如何生成一个 view 的,机制是什么

Framework是android 系统对 linux kernel,lib库等封装,提供WMS,AMS,bind机制,handler-message机制等方式,供app使用。 简单来说framework就是提供app生存的环境。

  1. Activity在attch方法的时候,会创建一个phonewindow(window的子类)
  2. onCreate中的setContentView方法,会创建DecorView
  3. DecorView 的addview方法,会把layout中的布局加载进来。

由于篇幅原因,以上面试题只抽取部分内容展示,需要更多章节面试题内容的可以继续往下看哦,有需要完整版的朋友可以点击下方课程链接详细了解!!!

https://edu.51cto.com/course/32703.html

第一章 Java方面

  • Java基础部分
  • Java集合
  • Java多线程
  • Java虚拟机

    2023年Android中高级最全面试题(含大厂原题+解析)_Android

第二章 Android方面

  • Android四大组件相关
  • Android异步任务和消息机制
  • Android UI绘制相关
  • Android性能调优相关
  • Android中的IPC
  • Android系统SDK相关
  • 第三方框架分析
  • 综合技术
  • 数据结构方面
  • 设计模式
  • 计算机网络方面
  • Kotlin方面

    2023年Android中高级最全面试题(含大厂原题+解析)_Java_02

第三章 音视频开发高频面试题

  • 为什么巨大的原始视频可以编码成很小的视频呢?这其中的技术是什么呢?
  • 怎么做到直播秒开优化?
  • 直方图在图像处理里面最重要的作用是什么?
  • 数字图像滤波有哪些方法?
  • 图像可以提取的特征有哪些?
  • 衡量图像重建好坏的标准有哪些?怎样计算?
  • ......

    2023年Android中高级最全面试题(含大厂原题+解析)_程序员面试_03

第四章 Flutter高频面试题

  • Dart部分
  • Flutter部分

    2023年Android中高级最全面试题(含大厂原题+解析)_Android_04

第五章 算法高频面试题

  • 如何高效寻找素数
  • 如何运用二分查找算法
  • 如何高效解决雨水问题
  • 如何去除有序数组的重复元素
  • 如何高效进行模幂运算
  • 如何寻找最长回文子串
  • ....

    2023年Android中高级最全面试题(含大厂原题+解析)_android_05

第六章 Andrio Framework方面

  • 系统启动流程面试题解析
  • Binder面试题解析
  • Handler面试题解析
  • AMS面试题解析

    2023年Android中高级最全面试题(含大厂原题+解析)_Android_06

第七章 企业常见174道面试题

  • SD卡
  • Android的数据存储方式
  • Broadcast Receiver
  • sp频繁操作会有什么后果?sp能存多少数据?
  • dvm与jvm的区别
  • ART
  • Activity的生命周期
  • Application能不能启动Activity
  • ....

    2023年Android中高级最全面试题(含大厂原题+解析)_android_07

结语

希望这份面试题,能帮助大家把握住机会,找到自己心仪的工作!!


标签:面试题,Java,原题,Activity,实例,2023,Handler,Android
From: https://blog.51cto.com/u_16163442/7139577

相关文章

  • 2023-08-18:用go写算法。你会得到一个字符串 text, 你应该把它分成 k 个子字符串 (subte
    2023-08-18:用go写算法。你会得到一个字符串text,你应该把它分成k个子字符串(subtext1,subtext2,…,subtextk)。要求满足:subtexti是非空字符串,所有子字符串的连接等于text,(即subtext1+subtext2+...+subtextk==text),subtexti==subtextk-i+1表示所有i的有......
  • 2023-08-18:用go写算法。你会得到一个字符串 text, 你应该把它分成 k 个子字符串 (subte
    2023-08-18:用go写算法。你会得到一个字符串text,你应该把它分成k个子字符串(subtext1,subtext2,…,subtextk)。要求满足:subtexti是非空字符串,所有子字符串的连接等于text,(即subtext1+subtext2+...+subtextk==text),subtexti==subtextk-i+1表示所有......
  • 2023年爬虫有哪些好用的付费代理IP?芝麻代理品易代理快代理熊猫代理……
    在我加班到凌晨2点的时候,第N次收到HTTP代理返回:项目是没办法接着做了,回家也是不可能回家的,烦得很一时半会还没想走,这种情况谁懂?开始知乎摸鱼,翻到这个:哈?这不就是1*88源头厂家的意思?????说这个我可就立马福尔摩斯附体了啊,今天我可非得找到你这个家伙!中间曲折的过程我就不重复说了,直接给我......
  • 2023级信息安全新生|王茗萱自我介绍
    0.生活照如下(本人不喜欢拍照,所以只好上传一些自己拍的风景) 1.姓名:王茗萱. 奋发向上:我的时间观念很强,对于学习与生活都有一定的追求,会反思自己的所作所为是否得当,      心思细腻:能够较为敏感的感知他人的情绪变化,比较有耐心,喜欢动手做一些手工,   ......
  • 2023年9月北京/杭州/深圳DAMA-CDGA/CDGP认证报名
    据DAMA中国官方网站消息,2023年度第三期DAMA中国CDGA和CDGP认证考试定于2023年9月23日举行。 报名通道现已开启,相关事宜通知如下: 考试科目: 数据治理工程师(CertifiedDataGovernanceAssociate,CDGA)数据治理专家(CertifiedDataGovernanceProfessional,CDGP) 考试时间: CDGA:2023......
  • 2023下半年NPDP产品经理国际认证8月19日开班
    产品经理国际资格认证NPDP是新产品开发方面的认证,集理论、方法与实践为一体的全方位的知识体系,为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。  【认证机构】 产品开发与管理协会(PDMA)成立于1979年,是全球范围内产品开发与管理专业人士最杰出的倡导者,协助个人、企业......
  • 2023北京/杭州/深圳CSPM-3国标项目管理中级认证招生
    CSPM-3中级项目管理专业人员评价,是中国标准化协会(全国项目管理标准化技术委员会秘书处),面向社会开展项目管理专业人员能力的等级证书。旨在构建多层次从业人员培养培训体系,建立健全人才职业能力评价和激励机制的要求,培养我国项目管理领域复合型人才。  【证书含金量】 ·竞聘优先......
  • 2023下半年北京/杭州/深圳软考信息系统项目管理师报名
    信息系统项目管理师是全国计算机技术与软件专业技术资格(水平)考试(简称软考)项目之一,是由国家人力资源和社会保障部、工业和信息化部共同组织的国家级考试,既属于国家职业资格考试,又是职称资格考试。信息系统项目管理师,属于软考三个级别中的“高级”。  【报考要求】 不设学历与资历......
  • 重要提醒!2023年下半年软考报名已延期
    由于软考是国家级考试,实行统一规划,实行统一大纲、统一试题、统一标准、统一证书的考试办法,所以可以确定,自2023年下半年起,软考全部改为机考!  值得注意的是1.2023年下半年考试日期还是11月4、5日,开考资格也不变。但是具体考试时间、批次可能会变,要在报名结束后确定,最终以准考证为准......
  • iBooker 布客技术评论 20230818
    一、程序员自检手册为了避免焦虑,你首先需要做的就是梳理你的业务:(1)你所在的行业是轻资产还是重资产?重资产就是人绕着机器转,创业需要买一大堆设备。如果是重资产,赶紧换一个。(2)你在行业中的位置,离最终用户有多远?如果中间有一堆中间商赚差价,要么干掉,要么走人。(3)你目前的技能能够......