二、Activity相关
1、启动模式以及使用场景?
2、Activity 四种启动模式常见使用场景
3、启动模式在实际开发中小插曲
4、Activity 中其他常见问题
5、Activity异常生命周期与应用
6、系统配置改变引起异常;
7、系统回收引起异常
8、Activity异常基础处理
9、Activity到底是如何启动的
10、zygote是什么?有什么作用?
11、SystemServer是什么?有什么作用?它与zygote的关系是什么?
12、ActivityManagerService是什么?什么时候初始化的?有什么作用?
13Launcher是什么?什么时候启动的?
14、Instrumentation是什么?和ActivityThread是什么关系?
15、如何理解AMS和ActivityThread之间的Binder通信?
16、AMS接收到客户端的请求之后,会如何开启一个Activity?
三.Fragment
1、Fragment生命周期和Activity 对比
2、Fragment之间如何进行通信
3、Fragment的startActivityForResult
4、Fragment重叠问题
5、Android Fragment完全解析,关于碎片你所需知道的一切中
6、Fragment重叠,如何通信
7、Fragment回退栈管理
8、Fragment与Activity通信
9、Fragment重叠问题
10、Fragment与ActionBar和Menultem
11、没有布局的Fragment—保存大量数据
12、DialogFragment的使用
13、Fragment的startActivityForResult
14、FragmentPagerAdapter与FragmentStatePagerAdapter的区
15、Fragmenti间的数据传递
16、Activity与Fragment生命周期探讨
四、Service相关
1、进程保活
2、Service的运行线程(生命周期方法全部在主线程)
3、Service启动方式以及如何停止
4、ServiceConnection里面的回调方法运行在哪个线程?
5、Android进程保活的一般套路
-
如何查看进程了解进本信息
-
进程划分
-
内存阀值
-
进程保活方案
6、关于Android进程保活,你所需要知道的一切
-
保活手段
-
黑色保活
-
白色保活
-
灰色保活
-
唠叨的分割线
-
进程回收机制
五、Android布局优化之ViewStub. inelude.merge
1、什么情况下使用ViewStub.include.merge?
2、他们的原理是什么?
3、布局优化神器include . merge. viewStub标签详解
include 标签使用
-
定义要实现(抽取)的layout布局:
-
Activity的XML布局文件调用include标签
-
Activity中调用include标签layout中的子View
merge 标签使用
- merge 标签使用前后 y Hierarchy r Viewer 截图
ViewStub 标签
-
ViewStub标签Demo效果图:
-
ViewStub标签使用前后Hierarchy Viewer截图
4、Android布局优化之ViewStub.include. merge使用与源码分析
六、BroadcastReceiver 相关
1、注册方式,优先级
2、广播类型,区别
3、广播的使用场景,原理
4、Android广播Broadcast的两种注册方式静态和动态
-
静态和动态注册方式
-
插入BroadcastReceiver的两种常用类型
-
默认广播下两种注册方式的比较
-
在有序广播下两种注册方式比较
-
接受打电话的广播,程序运行与结束时比较两种注册方式
(1)在未退出Activity时,拨打电话,Log如下:
(2)在退出Activity时,拨打电话,Log如下(即便不解除注册,动态仍无法接受到广播):
5、Android四大组件:BroadcastReceiver史上最全面解析
6、安卓广播的底层实现原理
七、AsyncTask 相关
1、AsyncTask是串行还是并行执行?
2、AsyncTask随着安卓版本的变迁
3、Android AsyncTask完全解析,带你从源码的角度彻底理解
-
AsyncTask的基本用法
-
分析AsyncTask的源码
-
关于AsyncTask你所不知道的秘密
4、Android源码分析—带你认识不—样的AsyncTask
-
使用AsyncTask的规则
-
AsyncTask到底是串行还是并行?源码分析
-
让你的AsyncTask在3.0以上的系统中并行起来
八、Android 事件分发机制
1、onTouch和onTouchEvent区别,调用顺序
2、dispatchTouchEvent,onTouchEvent,onInterceptTouch
3、滑动冲突,如何解决
Android事件分发机制完全解析,带你从源码的角度彻底理解
Android ViewGroup事件分发机制
源码分析
-
viewGroup - dispatchTouchEvent - ACTION_DOWN
-
ViewGroup - dispatchTouchEvent - ACTION_MOVE
-
ViewGroup - dispatchTouchEvent - ACTION_Up
关于拦截
-
如何拦截
-
如何不被拦截
4、如果没有找到合适的子View
讲讲Android的事件分发机制
Activity 的事件分发机制
-
ViewGroup的事件分发机制
-
View 的事件分发机制
-
再来看看onTouchEvent0
九、Android View 绘制流程
1、简述View绘制流程
2、onMeasure,onlayout,ondraw方法中需要注意的点
3、如何进行自定义View
4、view重绘机制
Android LayoutInflater原理分析,带你一步步深入了解View(一)
Android视图绘制流程完全解析,带你一步步深入了解View(二).
-
onMeasure0
-
onLayoutO
-
onDraw0
Android视图状态及重绘流程分析,带你一步步深入了解View(三)
-
视图状态
-
视图重绘
Android自定义View的实现方法,带你一步步深入了解View(四)
-
自绘控件
-
组合控件
-
继承控件
十Android Window、Activity、DecorView 以及 ViewRoot
十一 Android 的核心 Binder 多进程 AIDL
1、常见的IPC 机制以及使用场景
2、为什么安卓要用binder进行跨进程传输
3、多进程带来的问题
4、Android aidl Binder框架浅析
-
AIDL的使用
-
分析AIDL生成的代码
-
不依赖AIDL实现程序间通讯
5、Android应用工程师的Binder l原理剖析
-
为什么必须理解Binder ?
-
为什么是 Binder ?
-
Linux下传统的进程间通信原理
-
Linux下的传统IPC通信原理
-
Binder跨进程通信原理
-
动态内核可加载模块&&内存映射.
-
Binder IPC实现原理
6、Binder通信模型
-
Client/Server/ServiceManagerf驱动
-
Binder 通信过程
-
Binder通信中的代理模式
-
Binder的完整定义
-
手动编码实现跨进程调用
-
各Java类职责描述
-
实现过程讲解
Android 进程间通信 (IPC ) 机制 Binder 简要介绍和学习计划
十二Android 高级必备 :AMS,WMS,PMS
1、Android高级必备:AMS,WMS,PMS
2、从Systemserver到AMS
3、ActivityManagerService 创建过程
4、将SystemServer进程可加到AMS中调度管理
5、创建运行在SystemServer进程中Provider
6、AMs systemReady过程
7、升级相关处理:发送PRE_BOOT_COMPLETED广播
8、收集已经启动的进程并杀死除过persistent进程
9、系统准备好后回调传入的Runnable
10、发送账户启动的广播,涉及多用户
11、启动桌面Home Activity.
12、Android解析ActivityManagerService
13、AMS启动流程和AMS家族
十三、Android ANR
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此我收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
1715801559815)]
[外链图片转存中…(img-LtOCIhHj-1715801559816)]
[外链图片转存中…(img-Nxte8CS9-1715801559817)]
[外链图片转存中…(img-nPt9yhZL-1715801559817)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!