热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Android开发究竟该如何学习,Android岗

#面试经验自己大大小小投了也有20多家公司,不过经历简历筛选以及笔试淘汰,最终就经历了7家公司的面试。下面我就把自己面试中问到的问题贴出来供大家参考,一些具体项目相关的就不贴了。#

# 面试经验
自己大大小小投了也有20多家公司,不过经历简历筛选以及笔试淘汰,最终就经历了7家公司的面试。下面我就把自己面试中问到的问题贴出来供大家参考,一些具体项目相关的就不贴了。
# 阿里巴巴
> 阿里是3月初开始投的,是自己第一次面试大型的互联网公司,当时自己的准备也不够充分,表现不是很好,经历了三次技术面,最后挂了。
**一面**
1. 自我介绍
2. hashmap和hashtable
3. jdbc
4. 三次握手
5. http状态码
6. HTTPS加密:对称,非对称,CA证书
7. handler
8. 线程池的使用
9. sychonized,volatile
10. binder
11. activity绘制流程
12. 事件响应流程
13. activity周期,启动模式
**二面**
1. 自我介绍
2. 对自己项目的介绍,架构图呈现
3. 对MVP和MVVM的理解。
4. 四大启动模式,以及场景对应
5. Handler的机制介绍,为什么不能在子线程初始化问题
6. 设计模式中的单例介绍,使用场景(Okhttp的Seesion存储等等),在线编写
7. 快排算法
8. OkHttp的源码分析,及整体架构的流程图绘制
9. 四大引用的问题和MVP框架相结合进行回答
10. View绘制流程问题,如何不使用xml,来实现中间位置的定位
11. 事件分发机制流程讲解,以及如何实现单击事件和长按事件的判定
12. 关于为什么选用mqtt协议的问题,优势,原理
**三面**
1. 自我介绍
2. abstract和interface区别
3. int和Integer区别
4. 四种引用
5. Java里面int、char、long的字节数
6. 线程的创建方式
7. RxJava的优缺点
8. EventBus
9. 从网络上加载一个10M的图片,要考虑哪些
10. http与https
11. http 1.0 和 http 2.0之间的区别
12. 设计模式准则
13. Handler机制
14. 算法:判断一个链表是否回文算法,给定一个数组,将数组里面的每一位向后移动k位
# 携程
> 携程当时投的时候就没抱希望,招聘信息上明确指定只招固定的那几所985高校,就随便投了,没想到笔试都没做就直接打电话面试了,不过问的问题确实很深入,结果显然,一面就挂了。
**一面**
1. 集合
2. concurrenthashmap
3. volatile
4. synchronized与Lock
5. Java线程池
6. wait/notify
7. NIO
8. 垃圾收集器
9. Activity生命周期
10. AlertDialog,popupWindow,Activity区别
# 斗鱼
> 斗鱼是一家直播公司,给出的实习待遇是相当好,经室友推荐就投了简历。最后流程走完,得知挂在了二面上,大概原因就是没有拿得出手的项目,实际项目经验不足。
**一面**
1. 线程同步(五个线程如何顺序执行)
2. GC
3. 内部类特点
4. 四大引用范式
5. 新建线程的方式(三个)
6. arraylist和linkedlist
7. 线程池(使用,种类,参数)
8. hashmap(底层实现,冲突解决方式,扩容方式,线程安全?LinkedHashmap)
9. 自定义VIew(View的绘制,自定义View的方法)
10. 性能优化(布局和代码)
11. sp、dp和px的区别(适配问题)
12. handler(基本原理,ThreadLocal原理和使用)
13. 四大组件(问了生命周期和特点和基本使用)* 计网
14. TCP和UDP
15. HTTP建立过程
**二面**
1. 问的都是一些项目问题,比较宽泛,没问具体技术点
# 字节跳动
> 字节跳动是在三月底投的,当时找了一个月,都没拿到拿得出手的offer,有点心烦意乱,就又海投了一波。3.24接了字节跳动的面试,3.29进行的视频面试。一共进行了3轮视频面试,字节的面试官很好,看得出来字节的技术是很强的,也很注重算法。最终拿到offer。
**一面**
1. 数据结构中堆的概念,堆排序
2. 死锁的概念,怎么避免死锁
3. ReentrantLock
4. synchronized
5. volatile
6. HashMap
7. singleTask启动模式
8. 用到的一些开源框架,介绍一个看过源码的,内部实现过程。
9. 消息机制实现
**二面**
1. synchronized与ReentrantLock
2. ReentrantLock的内部实现
3. 用到的一些开源框架,介绍一个看过源码的,内部实现过程。
4. Java中异常
5. App启动崩溃异常捕捉
6. 事件传递机制的介绍
7. ListView的优化
8. 今日头条推荐新闻去重,推荐的时候去掉用户已经看过的新闻。
9. 二叉树,给出根节点和目标节点,找出从根节点到目标节点的路径。手写算法
10. 模式MVP,MVC介绍
11. 断点续传的实现
**三面**
1. 集合的接口和具体实现类,介绍
2. TreeMap具体实现
3. synchronized与ReentrantLock
4. 手写生产者/消费者模式
5. 逻辑地址与物理地址,为什么使用逻辑地址
6. volatile
7. 一个无序,不重复数组,输出N个元素,使得N个元素的和相加为M,给出时间复杂度、空间复杂度。手写算法
8. Android进程分类
9. 前台切换到后台,然后再回到前台,Activity生命周期回调方法。弹出Dialog,生命值周期回调方法。
10. Activity的启动模式
# 腾讯
> 腾讯大家都知道互联网巨头,我是通过实习僧上简历投递获得的这次面试机会,一共进行了两轮电话面试,挂在了二面。
**一面**
1. 自我介绍
2. APP的启动流程
3. APP的安装流程
4. Rxjava的源码
5. 事件分发机制和多点触控
6. https和非对称加密
7. Retrofit的动态代理
8. 几种IPC方式的优劣,以及Binder的原理
9. 本地持久化储存的方法
10. parcelable和serializable
**二面**
1. 自我介绍
2. 笔试题1:删除无序链表中的重复结点(能否优化)
3. 笔试题2:先说一下二叉树的有哪些遍历方法。写一个二叉树前序遍历的非递归形式。
4. 讲一下Java的内存。
5. 创建一个字符串对象,这个对象分配在哪里?
6. String str = “123” + “456”;会创建几个对象。
7. 问了操作系统的问题,没学过,所以也忘了问了什么。
8. 数据存储有学过吗?数据库和文件保存有什么区别?
9. Activity有哪些启动模式?
10. 有什么要问的?

# 最后
给大家送上我成功跳槽复习中所整理的资料,由于文章篇幅有限,所以只是把题目列出来了,我自己手头上整理的资料均和上面的答案可免费分享,需要这些资料和答案的朋友,**可以[点击这里免费领取](https://github.com/a120464/Android-P7/blob/master/Android%E5%BC%80%E5%8F%91%E4%B8%8D%E4%BC%9A%E8%BF%99%E4%BA%9B%EF%BC%9F%E5%A6%82%E4%BD%95%E9%9D%A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)。**
![image](http://www.icode9.com/i/li/?n=2&i=images/20210708/1625677161535780.jpg)
![image](http://www.icode9.com/i/li/?n=2&i=images/20210708/1625677161178859.jpg)
![image](http://www.icode9.com/i/li/?n=2&i=images/20210708/1625677161104131.jpg)
推荐阅读
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • 本文介绍了在MFC下利用C++和MFC的特性动态创建窗口的方法,包括继承现有的MFC类并加以改造、插入工具栏和状态栏对象的声明等。同时还提到了窗口销毁的处理方法。本文详细介绍了实现方法并给出了相关注意事项。 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • 本文总结了在编写JS代码时,不同浏览器间的兼容性差异,并提供了相应的解决方法。其中包括阻止默认事件的代码示例和猎取兄弟节点的函数。这些方法可以帮助开发者在不同浏览器上实现一致的功能。 ... [详细]
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了PhysioNet网站提供的生理信号处理工具箱WFDB Toolbox for Matlab的安装和使用方法。通过下载并添加到Matlab路径中或直接在Matlab中输入相关内容,即可完成安装。该工具箱提供了一系列函数,可以方便地处理生理信号数据。详细的安装和使用方法可以参考本文内容。 ... [详细]
  • Go GUIlxn/walk 学习3.菜单栏和工具栏的具体实现
    本文介绍了使用Go语言的GUI库lxn/walk实现菜单栏和工具栏的具体方法,包括消息窗口的产生、文件放置动作响应和提示框的应用。部分代码来自上一篇博客和lxn/walk官方示例。文章提供了学习GUI开发的实际案例和代码示例。 ... [详细]
author-avatar
糖糖菓子
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有