1 votos

¿Cómo determinar qué aplicación está bloqueando el uso del micrófono?

¿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.

1voto

beeshyams Puntos 82

Utilizando logcat extreme y la supervisión por aplicación establecida en WhatsApp , muestra

mediaFocuscontrol: Audiofocus*request*Audiofocus() from Android.media.audiomanager cuando se activa el micrófono

Y

mediaFocuscontrol: Audiofocus*abandon*Audiofocus() from Android.media.audiomanager cuando se desactiva el micrófono

0 votos

No estoy seguro de que instalar otra aplicación que bloquee el micrófono vaya a ayudar en esta situación. Ya está bloqueado. Pero gracias por la sugerencia.

1 votos

Esa aplicación debía dar una alerta cuando se activara el micrófono. Publicado enfoque logcat - no estoy seguro de si eso sirve a su propósito totalmente

1voto

Firelord Puntos 161

No estoy seguro sobre Nougat pero esto funciona para Android 6.0.1. Ejecutar:

adb shell dumpsys audio 

En la salida busque en Entradas de la pila de Audio Focus (la última es la primera de la pila) . Por ejemplo, cuando tenía una aplicación de grabación de audio usando el micrófono, la salida era:

Audio Focus stack entries (last is top of stack):
  source:android.os.BinderProxy@a60844c -- pack: com.sonymobile.androidapp.audiorecorder -- client: android.media.AudioManager@a251d71com.sonymobile.androidapp.audiorecorder.shared.media.VolumeControl@72c2756 -- gain: GAIN -- flags:  -- loss: none -- uid: 10108 -- attr: AudioAttributes: usage=1 content=2 flags=0x0 tags=

Aquí el paquete que utiliza el micrófono es com.sonymobile.androidapp.audiorecorder .

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X