AudioManager
有一个setParameters方法,接受字符串表示形式的键值对(“parameter_name = parameter_value”)。
在内部,它调用原生AudioSystem.setParameters
获取参数值的唯一方法是,如果您知道它的名称,可以通过调用AudioManager.getParameters
方法来调用`AudioSystem'中相应的本机方法。
是否有办法(使用反射或其他技术)获取支持的参数列表(当然结果将取决于它所调用的设备,因为它是特定于平台的)?
答案 0 :(得分:6)
经过简单调查后,我猜测没有可靠的方法来枚举音频设备参数的所有可用密钥。 Android标头定义了一小组通用参数,可能应该受到所有设备的支持。您可以找到实际的密钥here(查找AUDIO_PARAMETER_*
个宏)。 interface到实际设备实现struct audio_hw_device
(由供应商实现)只有get_parameters()/set_parameters()
且没有枚举入口点。因此,无法请求支持的参数键的完整列表。
最重要的是:
欢迎任何纠正措施。