其他分享
首页 > 其他分享> > androidui线程执行,高级Android开发面试解答

androidui线程执行,高级Android开发面试解答

作者:互联网

# 一、Java 知识梳理 Java&Android 基础知识梳理(0) - Java 基础知识大纲 Java&Android 基础知识梳理(1) - 注解 Java&Android 基础知识梳理(2) - 序列化 Java&Android 基础知识梳理(3) - 内存区域 Java&Android 基础知识梳理(4) - 垃圾收集器与内存分配策略 Java&Android 基础知识梳理(5) - 类加载&对象实例化 Java&Android 基础知识梳理(6) - 字节输入输出流 Java&Android 基础知识梳理(7) - Android 虚拟机 Java&Android 基础知识梳理(8) - 容器类 Java&Android 基础知识梳理(9) - LruCache 源码解析 Java&Android 基础知识梳理(10) - SparseArray 源码解析 Java&Android 基础知识梳理(11) - 浅拷贝 Vs 深拷贝 Java&Android 基础知识梳理(12) - 泛型 Java&Android 基础知识梳理(13) - 反射 ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626009458313254.jpg) # 二、Android 基础知识 ## 2.1 Activity 知识梳理 Activity 知识梳理(1) - Activity 生命周期 Activity 知识梳理(2) - Activity 栈 Activity 知识梳理(3) - Activity 状态保存和恢复 ## 2.2 Fragment 知识梳理 Fragment 知识梳理(1) - Fragement 源码解析 Fragment 知识梳理(2) - Fragment 状态保存和恢复 Fragment 知识梳理(3) - FragmentPagerAdapter 和 FragmentStatePagerAdapter 解析 Fragment 知识梳理(4) - FragmentPagerAdapter 和 FragmentStatePagerAdapter 的数据更新问题 ## 2.3 RecyclerView 知识梳理 RecyclerView 知识梳理(1) - 综述 RecyclerView 知识梳理(2) - Adapter RecyclerView 知识梳理(3) - LayoutManager RecyclerView 知识梳理(4) - ItemDecoration RecyclerView 知识梳理(5) - ItemTouchHelper ## 2.4 Loader 知识梳理 Loader 知识梳理(1) - LoaderManager 初探 Loader 知识梳理(2) - initLoader 和 restartLoader的区别 Loader 知识梳理(3) - 自定义 Loader ## 2.5 Android 异步任务知识梳理 Android 异步任务知识梳理(1) - AsyncTask 解析 Android 异步任务知识梳理(2) - HandlerThread 解析 Android 异步任务知识梳理(3) - AsyncQueryHandler 解析 ## 2.6 Android 数据存储知识梳理 Android 数据存储知识梳理(1) - SQLiteOpenHelper 源码解析 Android 数据存储知识梳理(2) - Android存储目录 Android 数据存储知识梳理(3) - SharedPreference 源码解析 Android 数据存储知识梳理(4) - 数据库升级操作的处理策略 ## 2.7 状态栏 Android 状态栏知识点总结 ## 2.8 广播 Broadcast 知识梳理(1) - BroadcastReceiver 基本概念 ## 2.9 Service Service 知识梳理(1) - Service 问题整理 ## 2.10 版本适配 Android 版本适配问题 ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626009458709664.jpg) # 三、开源框架 ## 3.1 Retrofit 知识梳理 Retrofit 知识梳理(1) - 流程分析 Retrofit 知识梳理(2) - Retrofit 动态代理内部实现 ## 3.2 OkHttp 知识梳理 OkHttp 知识梳理(1) - OkHttp 源码解析之入门 OkHttp 知识梳理(2) - OkHttp 源码解析之异步请求 & 线程调度 OkHttp 知识梳理(3) - OkHttp 之缓存基础 OkHttp 知识梳理(4) - OkHttp 之缓存源码解析 ## 3.3 Volley Volley 知识梳理 - Volley 源码解析 ## 3.4 Glide Glide 知识梳理(1) - 基本用法 Glide 知识梳理(2) - 自定义Target Glide 知识梳理(3) - 自定义transform Glide 知识梳理(4) - 自定义animate Glide 知识梳理(5) - 自定义GlideModule Glide 知识梳理(6) - Glide 源码解析之流程剖析 ## 3.5 RxJava2 理论 RxJava 知识梳理(1) - RxJava 解析 RxJava 知识梳理(2) - RxJava2 操作符实践 RxJava 知识梳理(3) - RxJava2 基础知识小结 ## 3.6 RxJava2 实战 RxJava2 实战知识梳理(1) - 后台执行耗时操作,实时通知 UI 更新 RxJava2 实战知识梳理(2) - 计算一段时间内数据的平均值 RxJava2 实战知识梳理(3) - 优化搜索联想功能 RxJava2 实战知识梳理(4) - 结合 Retrofit 请求新闻资讯 RxJava2 实战知识梳理(5) - 简单及进阶的轮询操作 RxJava2 实战知识梳理(6) - 基于错误类型的重试请求 RxJava2 实战知识梳理(7) - 基于 combineLatest 实现的输入表单验证 RxJava2 实战知识梳理(8) - 使用 publish + merge 优化先加载缓存,再读取网络数据的请求过程 RxJava2 实战知识梳理(9) - 使用 timer/interval/delay 实现任务调度 RxJava2 实战知识梳理(10) - 屏幕旋转导致 Activity 重建时恢复任务 RxJava2 实战知识梳理(11) - 检测网络状态并自动重试请求 RxJava2 实战知识梳理(12) - 实战讲解 publish & replay & share & refCount & autoConnect RxJava2 实战知识梳理(13) - 如何使得错误发生时不自动停止订阅关系 RxJava2 实战知识梳理(14) - 在 token 过期时,刷新过期 token 并重新发起请求 RxJava2 实战知识梳理(15) - 实现一个简单的 MVP + RxJava + Retrofit 应用 ## 3.7 Dagger2 知识梳理 Dagger2 知识梳理(1) - Dagger2 依赖注入的两种方式 Dagger2 知识梳理(2) - @Qulifier 和 @Named 解决依赖注入迷失 Dagger2 知识梳理(3) - 使用 dependencies 和 @SubComponent 完成依赖注入 Dagger2 知识梳理(4) - @Scope 注解的使用 ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626009459463514.jpg) ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626009459911821.jpg) # 四、算法知识梳理 面试算法知识梳理(1) - 排序算法 面试算法知识梳理(2) - 字符串算法第一部分 面试算法知识梳理(3) - 字符串算法第二部分 面试算法知识梳理(4) - 数组第一部分 面试算法知识梳理(5) - 数组第二部分 面试算法知识梳理(6) - 数组第三部分 面试算法知识梳理(7) - 数组第四部分 面试算法知识梳理(8) - 二分查找算法及其变型 面试算法知识梳理(9) - 链表算法第一部分 面试算法知识梳理(10) - 二叉查找树 面试算法知识梳理(11) - 二叉树相关算法第一部分 面试算法知识梳理(12) - 二叉树算法第二部分 面试算法知识梳理(13) - 二叉树算法第三部分 面试算法知识梳理(14) - 数字算法 ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626009459496253.jpg) # 五、Kotlin 知识梳理 Kotlin 知识梳理(1) - Kotlin 基础 Kotlin 知识梳理(2) - 函数的定义与调用 Kotlin 知识梳理(3) - 类、对象和接口 Kotlin 知识梳理(4) - 数据类、类委托 及 object 关键字 Kotlin 知识梳理(5) - lambda 表达式和成员引用 Kotlin 知识梳理(6) - Kotlin 的可空性 Kotlin 知识梳理(7) - Kotlin 的类型系统 Kotlin 知识梳理(8) - 运算符重载及其他约定 Kotlin 知识梳理(9) - 委托属性 Kotlin 知识梳理(10) - 高阶函数:Lambda 作为形参或返回值 Kotlin 知识梳理(11) - 内联函数 Kotlin 知识梳理(12) - 泛型类型参数 Kotlin 知识梳理(13) - 运行时的泛型 # 六、多线程知识梳理 多线程知识梳理(1) - 并发编程的艺术笔记 多线程知识梳理(2) - synchronized 三部曲之基本使用 多线程知识梳理(3) - synchronized 三部曲之锁优化 多线程知识梳理(4) - synchronized 三部曲之等待/通知模型 多线程知识梳理(5) - 线程池四部曲之 Executor 框架 多线程知识梳理(6) - 线程池四部曲之 ThreadPoolExecutor 多线程知识梳理(7) - ConcurrentHashMap 实现原理 多线程知识梳理(8) - volatile 关键字 多线程知识梳理(9) - ThreadLocal 多线程知识梳理(10) - 死锁的概念 多线程知识梳理(11) - 队列同步器实现原理 & 应用 多线程知识梳理(12) - ReentrantLock 解析 多线程知识梳理(13) - ReentrantReadWriteLock 原理 ### 结尾 **最后,针对上面谈的内容,给大家推荐一个Android资料,应该对大家有用。** 首先是一个知识清单:(对于现在的Android及移动互联网来说,我们需要掌握的技术) >泛型原理丶反射原理丶Java虚拟机原理丶线程池原理丶 >注解原理丶注解原理丶序列化 >Activity知识体系(Activity的生命周期丶Activity的任务栈丶Activity的启动模式丶View源码丶Fragment内核相关丶service原理等) >代码框架结构优化(数据结构丶排序算法丶设计模式) >APP性能优化(用户体验优化丶适配丶代码调优) >热修复丶热升级丶Hook技术丶IOC架构设计 >NDK(c编程丶C++丶JNI丶LINUX) >如何提高开发效率? >MVC丶MVP丶MVVM >微信小程序 >Hybrid >Flutter ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626009460127823.jpg) 接下来是资料清单:(**敲黑板!!!**) **领取通道在这里给你们摆上了~** ##### **[点击我的GitHub免费获取](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)** * * * **1.数据结构和算法** ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626009460161604.jpg) **2.设计模式** ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626009461708402.jpg) **3.全套体系化高级架构视频**;七大主流技术模块,视频+源码+笔记 ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626009461440962.jpg) **4.面试专题资料包**(怎么能少了一份全面的面试题总结呢~) ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626009462485250.jpg) >不论遇到什么困难,都不应该成为我们放弃的理由!共勉~ 如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。谢谢。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626009462532372.jpg)

标签:androidui,Kotlin,知识,RxJava2,算法,线程,Android,梳理
来源: https://blog.51cto.com/u_15297686/3036660