¿Hay alguna manera de determinar qué aplicación que se está ejecutando actualmente está utilizando el micrófono? Sospecho que el lanzador de flechas, pero me gustaría intentar confirmarlo. Estoy buscando un método que proporcione registros / información de depuración para añadir a un informe de error .
Android versión 7.1. Nexus 5x rooteado.
No estoy buscando otra aplicación que proporcione esta funcionalidad. Soy un desarrollador (aunque no de Java) y me gustaría entender los procesos involucrados en el acceso y bloqueo del micrófono.
aquí está el volcado de audio dumpsys como se solicita en la primera respuesta:
adb shell dumpsys audio
MediaFocusControl dump time: 12:43:52 pm
Audio Focus stack entries (last is top of stack):
Notify on duck: true
Stream volumes (device: index)
- STREAM_VOICE_CALL:
Muted: false
Min: 1
Max: 7
Current: 1 (earpiece): 5, 40000000 (default): 5
Devices: speaker
- STREAM_SYSTEM:
Muted: false
Min: 0
Max: 7
Current: 1 (earpiece): 5, 2 (speaker): 4, 40000000 (default): 5
Devices: speaker
- STREAM_RING:
Muted: false
Min: 0
Max: 7
Current: 1 (earpiece): 5, 2 (speaker): 4, 40000000 (default): 5
Devices: speaker
- STREAM_MUSIC:
Muted: false
Min: 0
Max: 15
Current: 4 (headset): 5, 8 (headphone): 5, 40000000 (default): 11
Devices: speaker
- STREAM_ALARM:
Muted: false
Min: 0
Max: 7
Current: 40000000 (default): 6
Devices: speaker
- STREAM_NOTIFICATION:
Muted: false
Min: 0
Max: 7
Current: 1 (earpiece): 5, 2 (speaker): 4, 40000000 (default): 5
Devices: speaker
- STREAM_BLUETOOTH_SCO:
Muted: false
Min: 0
Max: 15
Current: 40000000 (default): 7
Devices: speaker
- STREAM_SYSTEM_ENFORCED:
Muted: false
Min: 0
Max: 7
Current: 1 (earpiece): 5, 2 (speaker): 4, 40000000 (default): 5
Devices: speaker
- STREAM_DTMF:
Muted: false
Min: 0
Max: 15
Current: 1 (earpiece): 11, 2 (speaker): 9, 40000000 (default): 11
Devices: speaker
- STREAM_TTS:
Muted: false
Min: 0
Max: 15
Current: 4 (headset): 5, 8 (headphone): 5, 40000000 (default): 11
Devices: speaker
- mute affected streams = 0x2e
Ringer mode:
- mode (internal) = NORMAL
- mode (external) = NORMAL
- ringer mode affected streams = 0x1a6 (STREAM_SYSTEM,STREAM_RING,STREAM_NOTIFICATION,STREAM_SYSTEM_ENFORCED,STREAM_DTMF)
- ringer mode muted streams = 0x0
- delegate = ZenModeHelper
Audio routes:
mMainType=0x0
mBluetoothName=null
Other state:
mVolumeController=VolumeController(android.os.BinderProxy@2e64f54,mVisible=false)
mSafeMediaVolumeState=SAFE_MEDIA_VOLUME_INACTIVE
mSafeMediaVolumeIndex=50
mPendingVolumeCommand=null
mMusicActiveMs=1500001
mMcc=234
mCameraSoundForced=false
mHasVibrator=true
mControllerService={mUid=0,mComponent=null}
mVolumePolicy=VolumePolicy[volumeDownToEnterSilent=true,volumeUpToExitSilent=true,doNotDisturbWhenSilent=true,vibrateToSilentDebounce=400]
También lo he intentado:
adb shell dumpsys activity broadcasts | grep -i microphone
Esto no da ninguna salida.