Android Interview Note

记录自己面试中所遇到的所有知识点,加强基础才是王道!!!

一、 Java

1. Java集合

  • List
    • ArrayList
    • LinkedList
  • Map
    • HashMap
    • HashTable
    • LinkedHashMap
  • Set
    • HashSet
    • TreeSet
  • Queue
    • PriorityQueue
    • ArrayDeque

2. JVM&内存管理

3. 多线程&并发包

4. 网络编程

二、Android

1. UI

2. 常用类源码分析

3. 常用技能

  • 性能优化
    • 内存泄露优化
    • 界面卡顿优化
    • 网络请求优化(接口合并等需要后台支持)
    • 电量 & 流量消耗优化
  • 打点统计 & 崩溃检测
    • 友盟统计
    • 自己后台(怎么上报)
    • Bugly & Fabric (怎么还原错误栈)
  • Bitmap 占用内存计算 & 优化
  • 滑动嵌套解决方案

4. 项目架构 & 解决方案

  • MVP & MVVM 的优缺点(怎么解决P层的生命周期问题)
  • 组件化(解决相互依赖)
  • 新建项目怎么选择轮子(技术栈)
  • ANR 问题怎么分析

5. 高级技术(了解)

  • 插件化
  • 热更新
  • 加固 & 反编译
  • NDK

三、设计模式

四、啊哈、算法

五、轮子原理

六、场景设计

  • 设计一个高可用的线程池(包含对阻塞态线程的处理)
  • 设计一个图片加载框架(Lru缓存)
  • 怎么统计App网络请求状况 & 流量使用情况

七、大神博客

八、工具使用

  • Charles
  • Git使用
  • Markdown语法
  • Gradle高级用法(如: 差异化构建)
  • 手机开发者选项
  • TraceView 方法性能分析
  • MAT & LeakCanary 内存泄漏分析
  • 反编译ApkTools
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,381评论 25 708
  • Java中的String类可以被继承么? 答:不能,因为它是一个final类,同样的还有Integer,Float...
    gyymz1993阅读 4,049评论 2 104
  • stack(栈区):存放局部变量、函数参数、返回数据和返回地址,系统自动分配释放。栈顶从高地址向低地址的方向生长,...
    _Onions阅读 653评论 0 0
  • 我们在世上行走,求的无非是开心和幸福,但上帝给予每个人的,只是追求幸福的权力,而非幸福本身。 于是,便会有了人生百...
    呜呜的小火车阅读 276评论 0 1
  • 那天 正巧下着雨 你转身 留我一人 在雨中一败涂地 再结实的伞 也挡不住 瓢泼大雨 砸在心头的痛 早已猜到...
    蓝桉_屿阅读 313评论 2 1