-
如何准备项目、作品,以及在面试的过程中展示给面试官看?
-
如何准备基础知识?
说实话想挤进大厂需要 7 分实力和 3 分机遇,并不是每个部门每个面试官都那么强,也是会有人在大厂里摸鱼或者更多的负责管理相关(软技能强)。
因此我们要做的是不断积累,提升知识面的广度和深度,也就是提升自己通过的概率。
接下来给大家分享面试大厂需要准备哪些东西。
简历内容
基本信息
姓名,联系方式,工作年限,学校,专业,学历
个人技能
-
工作几年
-
独立开发
-
掌握的技能,组件化、插件化、热修复、自定义view
-
适配、架构、第三方源码、性能优化
-
职业技能:管理能力、产品能力、沟通能力
这些东西一定要写自己熟悉的,最好项目里面能体现出来的内容
项目经验
**项目描述:**一句话 工作内容:做了哪些模块,用了什么技术、做过哪些优化,重构方面的内容
项目方面写两到三个项目,最好最近一两家公司做的项目
公司经历
公司名称 时间 工作内容
面试题准备
项目中用到的技术
整理出来,上网找找相关的技术文章和面试题看看,然后用自己的话把这些内容梳理出来,最好有自己的看到,面试官习惯问为什么。
Android知识点
基础:
四大组件、fragment、自定义View、事件分发、滑动处理、handler、AsyncTask、IntentService、ThreadHandler、Bitmap相关的、动画的用法
进阶:
ListView、RecyclerView、AIDL、LruCache、DiskLruCache、View,Window,Activity的关系、进程保活、性能优化、
高阶:
Bindler、AMS、WMS、Context、APP的启动流程、插件化、组件化、热修复什么的等等
第三方框架:
okhttp、retrofit、RxJava等等,熟悉一个框架的源码,然后知道其他框架的优缺点
混合开发:
通常都是RN相关的,目前Flutter用的不多
架构和语言:
MVC、MVP、MVVM、组件化、插件化、热修复等等
上面介绍得不需要全部掌握,看你项目,挑一些内容掌握住,怎么问都不怕得那种,前提是不去一二线得大厂
java知识点
多线程、并发、java基本语法、泛型、hashmap等容器相关的,一般这几差不多了
面试内容准备
自我介绍
就聊聊最近一个项目里面的工作内容,遇到的问题,有什么亮点,难点 这个看项目,有人说我们没什么亮点啊,我只想说你写的代码都没有bug么,花你半天一天时间搞不定的bug就可以聊了
职业规划
技术线路:架构师技术专家 管理线路:开发leader,项目经理什么的
有什么想问的
技术面试官问你:
问问技术团队多少人、技术氛围怎么样的、如果有可能问问他们的技术栈是什么,围绕着技术来问
HR问:
转正的考核标准啊,薪资待遇啊,公司现有规模啊、发展情况啊,表现出对这个公司很感兴趣就行了
注意一点:
考虑好你得目标公司的规模和行业。
**小微公司:**不看项目随便问,没有逻辑性,闭了眼睛瞎问,对于这种会就会,不会就不会,别怂,反正也不想去。
**稍微大点的厂:**一般是围绕项目去问,然后衍生出一些技术问题来细问,问的比较深的时候别慌,把你的理解说出来,然后说其他的就不知道了,体现出你的思考和应变能力。
基本上面试就这些的,剩下的就是尽人事听天命了,记住,面试不上有时候不是你得问题,很可能是公司其实不急着找人,或者面试官不行。
总之,面试需认真谨慎地对待。
300+Android面试题分享
我是整理了一份一千多页的Android 高级开发面试题,但由于篇幅太长了,所以这里就只放上300多的Android方面的面试题,关于面试题解析可以先戳这里获取:【github】
第一部分
-
Overload 和 Override 的区别
-
String 和 StringBuffer 的区别
-
实现一个字符串倒序
-
抽象类与接口的区别(abstract 与 interface 的区别)
-
集合的实现类与区别
-
线程有几种状态,分别是哪些(调用 run()和调用 start()的区别)
-
Final、finally、finanlize()的区别
-
J2EE 是什么?请对以下在 J2EE 中常用的名词进行解释(或简单描述)
-
j2ee 常用的设计模式?说明工厂模式
-
开发中都用到了那些设计模式?用在什么场合
-
常用设计模式及应用场景
-
广播如何调用,有什么方式,各自的区别,实现广播的意图是什么,哪里用到
-
android 系统架构
-
Android 的四大组件是什么?它们的作用是什么
-
Activity 生命周期?保存 activity 的一些信息在哪个生命周期方法中
-
Activity 的 onSaveInstanceState() 和 onRestoreInstanceState()
-
activity 在屏幕旋转时的生命周期
-
Android 中 asset 文件夹和 raw 文件夹区别
-
Android 中的五种存储方式及其应用场景
-
什么是 ANR 如何避免它?(Android 线程间的通信方式 )
-
listview 优化策略
-
ListView 分页加载实现思路
-
ListView 图片异步加载实现思路
-
Intent 的原理、作用、可以传递哪些类型的参数
-
如何实现屏幕分辨率的自适应(布局、九线图、目录)
-
简述 Android 中的 IPC 机制
-
Android 程序入口如何判断
-
android 哪几种方式访问网络
-
说说 HttpClient 的通信过程
-
移动互联数据交互格式有哪些及其区别
第二部分
-
XML 解析有哪几种?各自优缺点,官方推荐使用哪种
-
sax 解析代码
-
百度地图核心类,及实现的功能
-
GC 内存泄露在什么情况下会出现?怎么解决
-
android 内存的优化
-
加载大图片的时候如何防止内存溢出
-
Android 缓存机制
-
如何实现消息推送
-
MVC 在 Android 中的应用
-
Android 自定义组件实现思路
-
版本更新的实现思路
-
播放视频有哪些实现方式
-
NDK 开发流程?(JNI 运行原理)
-
如何实现一键退出
-
AndroidManifest.xml 清单文件标签中属性的含义
-
如何将一个 Activity 设置成窗口的样式
-
谈谈 UI 中, Padding 和 Margin 有什么区别,gravity 与 layout_gravity 的区别
-
实现手风琴效果
-
Android SDK 3.0(HoneyComb)及 4.0(Ice Cream)新特性
-
android 客户端如何实现自动登录
-
请介绍下 Android 中常用的五种布局。
-
android 中的动画有哪几类,它们的特点和区别是什么
-
activity 的启动模式有哪些?是什么含义
-
跟 activity 和 Task 有关的 Intent 启动方式有哪些?其含义是
-
如何启用 Service,如何停用 Service。
-
Handler
-
说明 handler 机制的原理
-
什么情况会导致 Force Close ?如何避免?能否捕获导致其的异常
-
请介绍下 ContentProvider 是如何实现数据共享的。
-
Service 和 Thread 的区别
第三部分
-
Android 异常
-
IntentService 有何优点
-
Activity
-
如何将一个 Activity 设置成窗口的样式
-
如何退出 Activity?如何安全退出已调用多个 Activity 的 Application
-
AIDL 的全称是什么?如何工作?能处理哪些类型的数据
-
请解释下 Android 程序运行时权限与文件系统权限的区别
-
系统上安装了多种浏览器,能否指定某浏览器访问指定页面?请说明原由
-
android 系统的优势和不足
-
Android dvm 的进程和 Linux 的进程, 应用程序的进程是否为同一个概念
-
嵌入式操作系统内存管理有哪几种, 各有何特性
-
什么是嵌入式实时操作系统, Android 操作系统属于实时操作系统吗
-
一条最长的短信息约占多少 byte
-
用算法调整图片的透明度
-
如何将 SQLite 数据库(dictionary.db 文件)与 apk 文件一起发布
-
sqlite 的用处及用法, 哪里用过
-
sqlite,修改,添加字段,版本更新,排序,默认排序
-
如何建一个“aaa.db”数据库,如何建一个 user 表;写出增删改查语句
-
SQLite 线程安全吗?sqlite3_threadsafe()来确实是否线程安全版本
-
怎么提高 sqlite 的效率
-
如何将打开 res aw 目录中的数据库文件
-
DDMS 和 TraceView 的区别
-
java 中如何引用本地语言
-
ListView 切换奇偶行背景色
-
getView()方法中判断 position 的奇偶性, 然后给 ConvertView 设置背景色
-
EditText 单行显示
-
oom 避免以及产生方式,遇到过几种 OOM
-
throw 与 throws 区别
-
LOST.DIR
-
设置界面怎么做的
第四部分
-
ui 效果图介绍布局
-
login 模块怎么做的
-
点击登录按钮的时候,会从 server 端获得什么?传送什么
-
android 客户端如何实现自动登录
-
版本更新,从 server 端获得什么,通过什么进行更新
-
Fragment 和 Activity 之间的联系
-
Fragment 如何实现 Activity 跳转,你怎么处理 Fragment 之间的信息交互
-
fragment 在哪个方法里实现代码
-
res 和 assets 资源文件的作用分别是什么,怎么读取
-
了解 pad 开发吗
-
常用的适配有哪些,如何进行优化
-
应用换肤有什么方案可以实现
-
异步任务中允许有多个线程同时进行吗
-
图片是怎么获取的
-
文件的下载
-
图片的下载
-
缓存区的图片如何适当的释放
-
图片缓存到哪里
-
那你的图片是如何请求的
-
图文混排怎么实现
-
相册缩略图是怎么实现的
-
下拉刷新的实现思路,反弹的效果是怎么实现的
-
自定义的 View
-
自定义控件用过哪些?对自定义控件是怎么看的
-
瀑布流的实现思路
-
聊天窗口的实现
-
android 的 dvm 和 Linux 进程是一样的吗
-
监听模式
-
如何刷新 view
-
Listview
第五部分
-
viewPager 左右切屏
-
listview 加载图片错位,什么原因导致的
-
ListView 中条目中显示 webView 会怎么样
-
用 listview 进行快速翻页,如何解决内存溢出
-
listview 快速滑动时,加载几条数据
-
实现 listview 分页
-
动画分为哪几种,各自的特点和区别
-
写出 Socket 服务器与客户端交互的代码和实现思路
-
谈谈对 Http 的理解
-
谈谈递归
-
写出 Activity 里的方法都是在什么情况下执行
-
dp 与 sp 的区别
-
java 有那些排序,冒泡代码
-
Java 线程实现方式和区别
-
Android 中布局、区别、应用场景
-
线程间通讯
-
进程间通讯
-
判断网络
-
网络代理
-
HTTP 的 post 和 get 方法的区别
-
怎么判断服务端返回的数据类型
-
栈,队列代码
-
服务 service
-
多线程下载,离线下载
-
支付方式
-
如果想改变分辨率但不动原来布局,实现思路是什么
-
java 常用的处理异常的机制,原理及应用
-
一段字符串“abdecffr”,请输出只出现一次的字母
-
输入一个数,求其二进数中有多少个 1
-
有一个 pizza 生产线
第六部分
-
推送了解吗?推送底层代码掌握吗
-
asynctack 原理
-
NDK 具体说一下
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
总结
这次面试问的还是还是有难度的,要求当场写代码并且运行,也是很考察面试者写代码
因为Android知识体系比较庞大和复杂的,涉及到计算机知识领域的方方面面。在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。
附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)
里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
(img-Yx70zbtI-1712991166860)]
总结
这次面试问的还是还是有难度的,要求当场写代码并且运行,也是很考察面试者写代码
因为Android知识体系比较庞大和复杂的,涉及到计算机知识领域的方方面面。在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。
附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)
[外链图片转存中…(img-Fu4lhBBS-1712991166860)]
里面包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-xvDpJqia-1712991166860)]