在实际开发中,经常会遇到需要新增一个音频类型(usage)的需求,这里我们简单介绍一下需要修改的代码。
一、新增属性
新增音频类型(usage)时,首先考虑的是新增对应属性。
1、AudioAttributes
源码位置:/frameworks/base/media/java/android/media/AudioAttributes.java
public final static int USAGE_RADIO = 101;
这里增加了对应属性,同时在该类中还有很多位置需要处理该新增属性。然后考虑将该音频类型添加到对应分组,简化了汽车音频路由、音量组的配置,并针对类似的用法进行了焦点交互。
2、CarAudioContext
源码位置:/packages/services/Car/service/src/com/android/car/audio/CarAudioContext.java
这里主要就是两个存储映射关系的数组
private static final SparseArray<int[]> CONT