检查其他应用是否正在使用Android麦克风
作者:互联网
我想使用Android麦克风检查噪音水平.但是,在访问麦克风之前,我想知道其他应用程序是否正在访问麦克风.如何检查其他应用程序是否正在访问麦克风?
解决方法:
关于活动输入流及其路由位置的信息由AudioFlinger,AudioPolicyManager和AudioHardware实例保存,这些实例不与应用程序共享此信息.
AudioManager类为应用程序提供了isMicrophoneMute()方法,但是在未使用时很可能会将麦克风取消静音,因此该方法并不能真正告诉您当前是否正在使用麦克风.
找出是否有输入流路由到麦克风的一种可能方法是在media.audio_policy和media.audio_flinger上执行dumpsys并解析输出.但是存在的风险是,在不同设备上的输出看起来会有所不同,而且我不知道是否允许您将这些服务的状态转储到非根设备上.
标签:android-audiomanager,android,audio,audio-recording 来源: https://codeday.me/bug/20191013/1905648.html