是否可以通过编程方式检测当前设备的音频平衡?
在Android 10上-我愿意检测的设置如下:
设置->可访问性->音频和屏幕文字->音频平衡
还显示了here
通过更改此平衡,我们作为用户可以将立体声音量的左侧或右侧设置得更大。
我可以以某种方式在我的应用程序中检索此值吗?
答案 0 :(得分:1)
这仅适用于Android Q以来的系统范围,并且将是Settings.java:
/**
* Master balance (float -1.f = 100% left, 0.f = dead center, 1.f = 100% right).
*
* @hide
*/
public static final String MASTER_BALANCE = "master_balance";
这些全局设置只能读取(未经测试,但类似):
Settings.Global.getFloat(context.getContentResolver(), Settings.Global.MASTER_BALANCE, 0f)
我找不到用于系统范围设置的任何公共API(这意味着,只有DevicePolicyManager
可以更改它),但是可以使用MediaPlayer.setVolume (float leftVolume, float rightVolume)
来控制此设置以播放自己的应用程序。