您的位置:首页 > 其它

Audio Policy 分析

2016-05-08 19:16 274 查看
http://blog.csdn.net/hgl868/article/details/6888001

上回我们说了AudioFlinger(AF),总感觉代码里边有好多东西没说清楚,心里发毛。就看了看AF的流程,我们敢说自己深入了解了Android系统吗?AudioPolicyService(APS)是个什么东西?为什么要有它的存在?下层的Audio HAL层又是怎么结合到Android中来的?更有甚者,问个实在问题:插入耳机后,声音又怎么从最开始的外放变成从耳机输出了?调节音量的时候到底是调节Music的还是调节来电音量呢?这些东西,我们在AF的流程中统统都没讲到。但是这些他们又是至关重要的。从我个人理解来看,策略(Policy)比流程更复杂和难懂。 当然,遵循我们的传统分析习惯,得有一个切入点,否则我们都不知道从何入手了。 这里的切入点将是: l AF和APS系统第一次起来后,到底干了什么。 l 检测到耳机插入事件后,AF和APS的处理。 大家跟着我一步步来看,很快就发现,啊哈,APS也不是那么难嘛。 另外,这次代码分析的格式将参考《Linux内核情景分析》的样子,函数调用的解析将采用深度优先的办法,即先解释所调用的函数,然后再出来继续讲。 我曾经数度放弃分析APS,关键原因是我没找到切入点,只知道代码从头看到尾!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: