2024年安卓最全各种风格的Android面试题,进来了解一下?,安卓逆向面试题

总结

这次面试问的还是还是有难度的,要求当场写代码并且运行,也是很考察面试者写代码
因为Android知识体系比较庞大和复杂的,涉及到计算机知识领域的方方面面。在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。

附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)

里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 遇到了什么印象深刻的问题。A:会顺着你介绍的项目问下具体实现。

  • 推送消息有富文本么?

  • 热修复了解么,用的什么?

  • apk包大小有限制么?怎么减少包大小?

  • 工作中有没有用过或者写过什么工具?脚本,插件等等

  • 比如:多人协同开发可能对一些相同资源都各自放了一份,有没有方法自动检测这种重复之类的

  • 写过native的底层代码么

  • view的绘制熟悉么,介绍下

  • gc相关的算法

  • anr是因为什么产生的,怎么排查

  • 界面上的话,有什么优化措施么?比如列表展示之类的,平时遇到过内存问题吗,怎么优化的?

  • 平时用过哪些设计模式?

Second:

  • 介绍下最近一年主要做了什么工作

  • 会对简历上突出的技能进行详情的询问:

  • 比如:音频合成的具体步骤,以及遇到的一些问题和细节处理。

  • 会根据面试发散一些问题,问到,seek方法播放到末尾后重新播放会有一些卡顿的不流畅问题,怎么避免,从交互设计或者技术角度。(个人表示没怎么关注这种)。

  • 项目团队多少人,怎么分配工作

  • 线程之间怎么通信的?

  • app的架构是怎么样的,并且为什么这样,有什么优缺点?

  • 算法熟悉么?给了一个二叉排序树,出了一个给定节点找到它的下一个元素(指的是大小顺序的下一个)的算法题。

  • 为什么找工作,自己的优势是什么

Third:

技术问题不再局限于简历,可能根据简历和回答情况渐进并扩散。

感觉各个技术面试官之前并没有沟通,可能会问到类似的问题

  • 介绍下自己主要负责的工作

  • Activity的生命周期有哪些,知道onRestart么,介绍下

  • savedInstanceState知道么,干什么用的,什么时候有值,什么时候为空,平时是怎么用的

  • View绘制熟悉么,介绍下,能说下是实现原理么?

  • 平时用过什么开发工具,分析工具?

  • ANR是怎么回事?怎么查?Service会引起ANR么?

  • Activity的启动模式有哪些?栈里是A-B-C,先想直接到A,BC都清理掉,有几种方法可以做到?这几种方法产生的结果是有几个A的实例?

  • 有什么工具可以看到Activity栈信息么?多个栈话,有方法分别得到各个栈的Activity列表么

  • 都熟悉哪些命令?知道怎么用命令启动一个Activity么?

  • SharedPrefrences的apply和commit有什么区别

  • java里带$的函数见过么,是什么意思

  • MD5是加密方法么,Base64呢

  • 有博客和github,主要是写的什么?有哪些关注

  • android 8.0 有哪些新特性

差不多就这些吧。。最后每个面试官都会让你问他问题。

公司二:

  • glide缓存策略?同一个图片跟size有关么

  • android中的动画有哪些

  • View事件传递机制

  • 界面卡顿怎么排查和优化?

  • Fragment的replace和end??的区别?

  • MVP,MVVM,MVC解释和实践

  • 项目之外的,对技术的见解,拓展知识

二面:

  • 微信跳一跳外挂怎么实现,检测怎么做的?

  • 一张纯色背景下怎么有效检测各个矩形?

  • 对接的so算法了解么,有接触过相关的库么?

  • 三个算法题选一个并写出测试用例:打印n-m之间所有的素数;计算n-m之间1出现的次数;指定数字序列的排序;

  • android api层的源码熟悉哪些?解释一下

  • ACTION_CANCEL什么时候触发,触摸button然后滑动到外部抬起会触发点击事件吗,在+ + 滑动回去抬起会么

  • 怎么处理嵌套View的滑动冲突问题

  • 热修复相关的原理,框架熟悉么

  • gradle打包流程熟悉么

  • 任意提问环节:其实可以问之前面试中遇到的问题:比如,多模块开发的时候不同的负责人可能会引入重复资源,相同的字符串,相同的icon等但是文件名并不一样,怎样去重?

公司三:

NetBase:

  • Canvas的底层机制,绘制框架,硬件加速是什么原理,canvas lock的缓冲区是怎么回事

  • surfaceview, suface,surfacetexure等相关的,以及底层原理

  • android文件存储,各版本存储位置的权限控制的演进,外部存储,内部存储

  • 上层业务activity和fragment的遇到什么坑??页面展示上的一些坑和优化经验

  • 网络请求的开源框架:OKHttp介绍,写过拦截器么

公司四:

Netbase:AI

  • 数据层有统一的管理么,数据缓存是怎么做的,http请求等有提供统一管理么?

  • 有用什么模式么,逻辑什么的都在Activity层?怎么分离的

  • 如果用了一些解耦的策略,怎么管理生命周期的?

  • 有什么提高编译速度的方法?

  • 对应用里的线程有做统一管理么?

  • jni的算法提供都是主线程的?是不是想问服务类的啊

  • 边沿检测用的啥?深度学习相关的有了解么?

  • 上线后的app性能分析检测有做么

公司五:

yz:

  • 进程间通信方式?Binder的构成有几部分?

  • HttpClient和HttpConnection的区别

  • View的事件传递机制

  • MVC,MVP,MVVM分别是什么?

  • Android中常用的设计模式,说三个比较高级的?

  • 内存优化,OOM的原因和排查方法

  • 想改变listview的高度,怎么做

  • Https是怎么回事?

  • 除了日常开发,其他有做过什么工作?比如持续化集成,自动化测试等等

公司六:

DiDi:比较全面

总结

**其实上面说了这么多,钱是永远赚不完的,在这个知识付费的时代,知识技能提升才是是根本!我作为一名8年的高级工程师,知识技能已经学习的差不多。**在看这篇文章的可能有刚刚入门,刚刚开始工作,或者大佬级人物。

像刚刚开始学Android开发小白想要快速提升自己,最快捷的方式,就是有人可以带着你一起分析,这样学习起来最为高效,所以这里分享一套高手学习的源码和框架视频等精品Android架构师教程,保证你学了以后保证薪资上升一个台阶。

这么重要的事情说三遍啦!点赞+点赞+点赞!

【Android高级架构师系统学习资料】高级架构师进阶必备——设计思想解读开源框架

第一章、热修复设计
第二章、插件化框架设计
第三章、组件化框架设计
第四章、图片加载框架
第五章、网络访问框架设计
第六章、RXJava 响应式编程框架设计
第七章、IOC 架构设计
第八章、Android 架构组件 Jetpack

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

…(img-Q9LpvmtI-1715795971583)]

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 22
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值