秦子帅明确目标,每天进步一点点.....

作者 |  天天有道地址 |  juejin.im/post/5eb01866f265da7b9c24562c

基本介绍

今天介绍一位朋友的经历:

从3月初开始复习,准备面试题。复习的资料主要为《Android开发艺术探索》和@jsonchao的博客,还有就是网上的其他博客资料。首先介绍一下自己基本情况:渣本毕业快4年,一直在小厂摸鱼混日子,学历和简历背景不是很好看,所以面试邀约也不是很多,面试也到处碰壁。从3月中旬开始面试,一直到4月底。共面试9家公司,近20轮面试,拿到2个小公司和1个上市公司(不是出名的公司)的offer,最后准备去上市公司了。也投递了BAT、360、抖音、快手、平安等大厂的岗位,不过大部分没给面试机会,少数大厂在后续面试中也把我拒绝了,原因是:基础知识不够扎实,技术深度不够。

面试分享

每轮面试都会有自我介绍,所以在面试前大家可以先准备一段自我介绍,向面试官介绍自己的基本情况。我这里只分享Android技术面试题(以每个公司为分类,将几轮面试题综合起来),面试官会在每个面试题继续深入,一直问到你不会为止。至于面试题答案,大家自行百度,在面试过程中尽可能回答完整(深度、广度、扩展),这样才能在面试官面前加分。建议大家找工作开始面试前,先找几家小公司找点面试感觉,然后再投自己期望的公司。

接下来是面试题:

公司一

  1. 组件化和arouter原理
  2. recyclerview和listview区别
  3. glide流程,缓存前压缩,缓存命中
  4. APP性能优化,内存优化,布局优化,绘制优化,内存泄漏
  5. Http和Https区别
  6. socket心跳包
  7. jvm虚拟机,堆和栈的结构
  8. activity启动模式,有哪些不同
  9. stack栈的特点,自定义stack结构
  10. kotlin优劣势

公司二

  1. 自定义view,中英文字符串宽高测量显示,测量算法,可扩展性
  2. 事件分发机制
  3. Activity,view,window联系
  4. 热修复和插件化原理
  5. Synchronized底层原理,java锁机制
  6. java容器,hashmap和hashtable区别,hashmap原理,扩容流程,扰动算法的优势
  7. ArrayList和LinkendList区别,List泛型擦除,为什么反射能够在ArrayList< String >中添加int类型
  8. Http和Https区别,SSL/TLS过程
  9. Android性能优化
  10. jvm虚拟机,堆和栈的结构,栈帧,JMM
  11. 组件化注意点,组件间通信机制
  12. 线程安全的单例模式有哪几种
  13. 熟悉的设计模式

公司三

  1. MVC,MVP,MVVM
  2. Activity和fragment生命周期区别,fragment正常添加和viewpager添加的区别,fragment懒加载原理,FragmentPagerAdapter 和 FragmentStatePagerAdapter
  3. 热修复和插件化
  4. 友盟bug统计,混淆后怎么定位bug。没接入热修复的APP中,上线后遇到bug怎么解决
  5. view绘制原理 (可以先说下基本view绘制,然后再说下屏幕刷新机制)
  6. 使用Analyze减少APK体积,原理
  7. Android 版本差异

公司四

  1. 基础类型字节,汉字占几个字节,线程和进程
  2. 四大组件,fileprovider和Contentprovide区别,activity启动流程
  3. MVC,MVP,MVVM
  4. TCP三次握手,四次挥手
  5. Eventbus,glide原理
  6. 性能优化,内存抖动,内存泄漏,内存溢出,handler机制,IntentService和handlerThread,子线程更新view内容的方法
  7. GC回收算法
  8. recyclerview和listview区别
  9. 组件化,模块化,插件化,热修复
  10. 工作中遇到的难题怎么解决的
  11. Kotlin Java优缺点,kotlin什么时候用分号,run,with,apply,内联函数,高阶函数
  12. APK体积优化
  13. 进程间通信
  14. 单例模式,哪些是安全的
  15. retrofit设计模式
  16. 自定义view
  17. 是否做过音视频和IM?
  18. APK性能优化
  19. CurrentHashMap1.7和1.8区别
  20. volatile关键字的作用,怎么保证原子性呢?
  21. 网络优化
  22. 对新技术的看法
  23. java泛型,协变和逆变

公司五

  1. HTTPS具体步骤
  2. 常用的设计模式,代理模式和装饰者模式区别
  3. 服务端返回错误的json数据,客户端怎么自定义model,避免出错
  4. Hook技术
  5. kotlin了解,协程
  6. 屏幕适配
  7. 抓包工具使用和原理
  8. 网络优化
  9. 未来期望,对公司的了解
  10. Okhttp,rxjava,glide,retrofit等原理,okhttp底层数据传输原理,http报文体结构
  11. APK体积优化
  12. Android jetpack使用和原理,新技术看法
  13. crashHandler获取应用crash信息
  14. recyclerview和listview缓存区别
  15. Android 常见崩溃问题分析及一般的解决方案
  16. NestedScrollView触摸机制,AOP相关知识
  17. 设计APP,整体架构选型
  18. Android沙盒和底层Linux通信
  19. ACTION_CANCLE什么时候触发
  20. 线程池原理

公司六

  1. 组件化,arouter,组件化UI,还有哪些路由框架。AS调试方法
  2. MVC,MVP,MVVM,Jetpack
  3. JVM,JMM,java加载对象的步骤,classLoader,GC回收算法
  4. 插件化和热修复
  5. 唯一安卓ID,安卓安全的知识,加密算法,判断activity前台进程
  6. TCP三次握手和四次挥手
  7. hash算法,hashmap,怎么解决hash冲突
  8. 加载大图,glide缓存机制,设计模式,双重检测的单例模式为什么要检查两次,自己设计图片加载框架思路
  9. 启动未注册的Activity
  10. AOP,蓝牙开发,IOT
  11. glide缓存清除:lrucache算法
  12. glide缓存文件太大,查找效率慢怎么优化?glide下载高清图片优化
  13. 最近研究的技术,遇到最难的事,对公司的期望

公司七

  1. 组件化, arouter优缺点
  2. MVC,MVP,MVVM
  3. 项目中的亮点,对架构的理解
  4. handler原理及相关知识点,message回收策略
  5. hashmap原理,arraymap原理,对比性能。
  6. hashmap为什么大于8才转化为红黑树,加载因子为什么是0.75
  7. Synchronized底层原理,java锁机制
  8. 服务和广播
  9. activity启动模式(给例子具体分析,A(标准)-》B(单例)-》C(singleTop)-》D(singleTask),分析有几个栈,每个栈内的activity)
  10. 常用设计模式,线程安全的单例模式

公司八

  1. static、final;继承与多态
  2. 组件化, arouter优缺点
  3. context相关知识点
  4. handler原理及相关知识点,handler缓存池大小。
  5. 性能优化,启动速度优化,架构
  6. java虚拟机与Dalvik和ART区别
  7. Kotlin协程,扩展函数和属性以及伴生对象
  8. 电商APP的首页,怎么设计一个APP架构
  9. MVP中数据请求为什么要和M一起,答:网络请求和javabean都是数据模型相关
  10. Glide的存储EngineKey是怎么保证唯一的。面试官答:有个队列会将EngineKey存储起来,每次生成后进行对比存储。这个我在源码中没找对位置,如果知道的同学,麻烦帮忙解释下。
  11. retrofit是怎么将service接口转化为我们需要的javabean的?
  12. 怎么做管理,新技术学习

公司九

  1. SqLite与contentProvider区别
  2. fragment周期,两个fragment切换周期变化,fragment通信
  3. https证书校验,加密相关,网络请求框架
  4. glide加载流程,大图显示,图片大小计算
  5. view绘制(从onSync()开始)
  6. 线程内存模型,线程间通信
  7. 获取view的宽高,更新view的方式,主线程消息机制
  8. OOM,内存泄漏,内存溢出,java引用类型,ANR分析
  9. APP性能优化,webview相关,webview优化,webview中Android与js互调
  10. 插件化和热修复

总结

简历上写的东西,一定要先搞懂,特别是简历上的专业技能。这次面试收到的最多反馈就是:基础知识不够扎实,技术深度不够。现在Android开发大部分需要懂点C++和Linux知识,大厂也需要刷算法面试题,在后面的学习过程中,我将从以上几个方面着手。当然也必须把基础知识学牢固,技术深度搞深入点。最后祝大家都能拿到心仪的offer!---END---转发至朋友圈,是绝对的真爱你的每一个在看,我都当成了喜欢!

android listview添加数据_Android面经分享,失业两个月,五一节前拿到offer相关推荐

  1. android listview添加数据_Android系统列表控件

    在android系统控件中,有多个控件可以展示列表数据. 一.ListView 该组件是android中最常用的一个UI组件,用于实现在屏幕上显示多个内容,以便于我们用手指进行滑动. ListView ...

  2. android listview remove 动画,给Android ListView添加删除item动画

    给Android ListView添加删除item动画 给listview删除一个item的时候加上一个折叠动画,感觉效果会好一点. 步骤是当删除一个view,先用动画把view的高度改变,看上去就是 ...

  3. delphi listview 添加数据 慢_ListView 的缓存机制

    一.前言 ListView 作为一个 Android 5.x 之前的一个用于显示数据列表的控件,或许在今天都已经被 RecyclerView 完全替代,但是其中的缓存机制仍然值得我们去了解,对后面学习 ...

  4. android listview 不显示_Android使用ExpandableListview实现时间轴

    背景 公司新项目中有一个功能要实现时间轴效果,网上也找了很多教程和Demo,但都不是我想要的,大部分用的是RecyclerView实现的,但这些都是一层的数据结构,但我需要的是两层的结构,用Recyc ...

  5. 【WinForm】线程中向listview添加数据

    在使用listview的时候,因为处理的数据较多,为防止在处理数据时出现假死的状态出现卡的情况,我们使用委托进行处理添加数据 定义委托 private delegate void AddListVie ...

  6. Android ListView添加头部和尾部

    ListView添加头部和尾部: 头部布局:addHeaderView 尾部布局:addFooterView 使用java代码: //添加头部final View header = View.infl ...

  7. android listview添加footview,有的手机可以正常显示,有的则不显示

    // 好吧..本来这段代码是放在setadapter之后,导致有的手机可以显示footview,有的手机不可以显示footview// 现在.把添加footview的操作,放在setadapter之前 ...

  8. Android 在添加数据至数据库时添加控制输入语句操作

    1.在将数据加入数据库之前,我们要先进行判断,通常在网页中我们都是通过js来写控制语句的, 那么在android studio中,如何编写控制语句呢? 其实原理差不多,对于每一个输入框,设置EditT ...

  9. delphi listview 添加数据 慢_Delphi 二十四岁, Delphi 10.3.1 发布

    Delphi1 是 Borland于1995年2月14日发布,因此2019年2月14日是该产品发布的24周年纪念日.如果你想了解一些关于该产品及其发布的历史,你可以参考文章"22 Years ...

最新文章

  1. 中国房地产官媒爆乐视投资国贸地产,布局AI智能家居生态
  2. 是什么能让 APP 快速精准定位到我们的位置?
  3. 这些焊接不良,你遇见过吗?
  4. 2010.11.13信息系统项目管理师考试下午试题答题思路剖析
  5. php require persion denied,php,nginx_php+nginx配置权限问题(13: Permission denied),php,nginx - phpStudy...
  6. https://leetcode.com/problems/palindromic-substrings/description/
  7. FISCO BCOS(四)——— 在Ubantu上安装python3.8
  8. 数据网格组件 Handsontable 不再开源,采用自拟的非商业许可证
  9. fastlane实现Android自动化打包
  10. 输入法框无法正常显示问题
  11. win7 下安装vs2010 pro 失败解决方法
  12. 一些心理上的优势状态和劣势状态
  13. MMDetection 2.0安装笔记
  14. 一次哔哩哔哩面试经历,看这一篇就够了!
  15. 更改Outlook OST数据文件位置
  16. AcWing 188. 武士风度的牛 BFS 水题
  17. 【JavaWeb - 网页编程】一 HTML技术与CSS技术
  18. 数学建模 MATLAB MATLAB全局优化算法
  19. java书签_Java 操作Word书签(一):添加、删除、读取书签
  20. 【 题集 】 寒假计划——最短路

热门文章

  1. 从严治码-系统集成项目之根本
  2. 使用 MSIX 打包 DotNetCore 3.0 客户端程序
  3. Redis基本使用及百亿数据量中的使用技巧分享
  4. 如何向微软 Docs 和本地化社区提交翻译贡献
  5. Redis 实战之主从复制、高可用、分布式
  6. 依赖注入的威力,.NET Core的魅力:解决MVC视图中的中文被html编码的问题
  7. Web服务器 - Apache配置介绍
  8. [转]Docker 大势已去,Podman 即将崛起
  9. ArrayList用法说明
  10. Android之TabLayout+ViewPager2+FragmentStateAdapter实现带数字变化的TAB选项