美文网首页Android技术知识
Android 都 13了,你的Framework储备还停留在8

Android 都 13了,你的Framework储备还停留在8

作者: 搬砖小老弟 | 来源:发表于2022-05-10 20:22 被阅读0次

从做Android的第一天起,你一定听过无数次关于Framework的讨论,也曾在这个版块被面试官吊锤N次。掉帧监控,函数插桩,慢函数检测,ANR 监控,启动监控,都需要对 Framework 有比较深入的了解,才能知道怎么去监控,利用什么机制监控,函数插桩插到哪里,反射调用该反射哪个类哪个方法哪个属性……

Framework 作为 Android 框架层,为众多App提供了N多的API来调用,但很多机制都是Framework包装好直接给 App 来用的,不知道这些机制原理,就无从下手在这基础上进行优化。

如果你了解 Android App 的启动机制,做启动优化一定会会更得心应手:定制什么样的 StartingWindow;什么时候可以拿到图片的宽高;DelayLoad 怎么做才会更合适;Service 什么时候启动可以不影响启动速度;Activity onResume 回调的时候真的可见了么?ContentProvider 会不会影响启动速度?为什么会影响?

再比如我们经常说的 Handler,MessageQueue,Looper。看源码你就可以更好的理解那些概念:Thread 和 Handler 的关系;为什么不能在子线程更新 UI?idleHandler什么时候运行?主线程为什么循环却不会卡死?ContentProvider、Broadcast、Service 是怎么利用 Message 监控 ANR 的?

再比如说 Android 的进程管理机制。AMS 把 Android 进程按照一定的规则,设置不同的优先级,在内存比较低的时候,高优先级的 App 比低优先级的 App 更不容易被系统干掉!那么 AMS 是按照什么规则来设置优先级的呢?了解这些规则是不是可以提高 App 的存活率呢?这都是可以通过熟读 AMS 代码知道的。

Android 的卡顿掉帧问题,很多文章都说卡顿是由于主线程耗时造成的,这其实只是一部分,其他的比如 RenderThread 耗时也会导致卡顿、Binder 通信耗时也会导致卡顿,60 fps 下没问题的 app 90fps或者 120fps 下也可能会卡顿,有时候低内存下你主线程读个文件可能都会导致卡顿。真正明白了卡顿的原理,再面对卡顿问题也不会再手足无措。

这里给大家推荐一套学习路线,并附有相关《Android 底层原理核心知识点笔记》,相信可以给大家提供一些帮助,有需要的朋友们也可以领取一下随时查漏补缺。,有需要的朋友们可以 点击这里直接获取!下载下来随时查漏补缺。

Handler机制实现原理部分

一、Handler机制之Thread
1.线程概念
2.Android线程的实现
3.线程的阻塞
4.关于线程上下文切换
5.关于线程的安全问题
6.守护线程
7.线程的内存

二、Handler机制之ThreadLocal

1. Java中的ThreadLocal
2. Android中的ThreadLocal
3. Android 面试中的关于ThreadLocal的问题

三、Handler机制之SystemClock类

四、Handler机制之Looper与Handler简介

五、Handler机制之Message简介与消息对象对象池

1.Message和MessageQueue类注释
2.获取Message成员变量解析
3.获取Message对象
4.Message的消息对象池和无参的obtain()方法
5.obtain()有参函数解析
6.Message的 浅拷贝

六、Handler机制之Me****ssageQueue简介

七、Handler机制之消息发送

八、Handler机制之消息的取出与消息的其他操作

有需要具体笔记文档的朋友,可以 点击这里直接获取!

Android Binder机制原理部分

一、Android跨进程通信IPC之Linux基础

二、Android跨进程通信IPC之Bionic

三、Android跨进程通信IPC之关于"JNI"的那些事

四、Android跨进程通信IPC之AndroidIPC基础

五、Android跨进程通信IPC之Binder的三大接口

六、Android跨进程通信IPC之Binder框架

七、Android跨进程通信IPC之Binder相关结构体简介

八、Android跨进程通信IPC之Binder驱动

如果需要这份《Android Framework知识点汇总》,有需要具体笔记文档的朋友,可以 点击这里直接获取!

《Android 底层原理知识点汇总》完整目录

相关文章

网友评论

    本文标题:Android 都 13了,你的Framework储备还停留在8

    本文链接:https://www.haomeiwen.com/subject/lffrurtx.html