1 votes

Comment déterminer quelle application bloque l'utilisation du microphone?

Existe-t-il un moyen de déterminer quelle application en cours d'exécution utilise le microphone? Je soupçonne le lanceur de flèches mais je voudrais essayer de confirmer cela. Je recherche une méthode qui fournirait des journaux / infos de débogage à ajouter à un rapport de bug.

Version Android 7.1. Nexus 5x rooté.

Je ne recherche pas une autre application pour fournir cette fonctionnalité. Je suis un développeur (bien que pas en Java) et j'aimerais comprendre les processus impliqués dans l'accès et le blocage du microphone.

voici le dump de dumpsys audio comme demandé par la première réponse :

 adb shell dumpsys audio

Heure du dump de MediaFocusControl : 12:43:52 pm

Entrées de la pile de focus audio (la dernière est en haut de la pile) :

 Notification d'abaissement : vrai

Volumes des flux (appareil : index)
- STREAM_VOICE_CALL :
   Muet : faux
   Minimum : 1
   Maximum : 7
   Actuel : 1 (écouteur) : 5, 40000000 (par défaut) : 5
   Appareils : haut-parleur
- STREAM_SYSTEM :
   Muet : faux
   Minimum : 0
   Maximum : 7
   Actuel : 1 (écouteur) : 5, 2 (haut-parleur) : 4, 40000000 (par défaut) : 5
   Appareils : haut-parleur
- STREAM_RING :
   Muet : faux
   Minimum : 0
   Maximum : 7
   Actuel : 1 (écouteur) : 5, 2 (haut-parleur) : 4, 40000000 (par défaut) : 5
   Appareils : haut-parleur
- STREAM_MUSIC :
   Muet : faux
   Minimum : 0
   Maximum : 15
   Actuel : 4 (casque) : 5, 8 (écouteurs) : 5, 40000000 (par défaut) : 11
   Appareils : haut-parleur
- STREAM_ALARM :
   Muet : faux
   Minimum : 0
   Maximum : 7
   Actuel : 40000000 (par défaut) : 6
   Appareils : haut-parleur
- STREAM_NOTIFICATION :
   Muet : faux
   Minimum : 0
   Maximum : 7
   Actuel : 1 (écouteur) : 5, 2 (haut-parleur) : 4, 40000000 (par défaut) : 5
   Appareils : haut-parleur
- STREAM_BLUETOOTH_SCO :
   Muet : faux
   Minimum : 0
   Maximum : 15
   Actuel : 40000000 (par défaut) : 7
   Appareils : haut-parleur
- STREAM_SYSTEM_ENFORCED :
   Muet : faux
   Minimum : 0
   Maximum : 7
   Actuel : 1 (écouteur) : 5, 2 (haut-parleur) : 4, 40000000 (par défaut) : 5
   Appareils : haut-parleur
- STREAM_DTMF :
   Muet : faux
   Minimum : 0
   Maximum : 15
   Actuel : 1 (écouteur) : 11, 2 (haut-parleur) : 9, 40000000 (par défaut) : 11
   Appareils : haut-parleur
- STREAM_TTS :
   Muet : faux
   Minimum : 0
   Maximum : 15
   Actuel : 4 (casque) : 5, 8 (écouteurs) : 5, 40000000 (par défaut) : 11
   Appareils : haut-parleur

- flux affectés par le silence = 0x2e

Mode sonnerie :
- mode (interne) = NORMAL
- mode (externe) = NORMAL
- flux affectés par le mode sonnerie = 0x1a6 (STREAM_SYSTEM,STREAM_RING,STREAM_NOTIFICATION,STREAM_SYSTEM_ENFORCED,STREAM_DTMF)
- flux silencieux du mode sonnerie = 0x0
- délégué = ZenModeHelper

Itinéraires audio :
  mMainType=0x0
  mBluetoothName=null

Autres états :
  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]

J'ai également essayé :

adb shell dumpsys activity broadcasts | grep -i microphone

Cela ne donne aucune sortie.

1voto

beeshyams Points 37355

En utilisant logcat extreme et en surveillant l'application définie sur WhatsApp, cela montre

mediaFocuscontrol: Audiofocus*request*Audiofocus() de Android.media.audiomanager lorsque le microphone est activé

Et

mediaFocuscontrol: Audiofocus*abandon*Audiofocus() de Android.media.audiomanager lorsque le microphone est désactivé

0 votes

Je ne suis pas sûr que l'installation d'une autre application qui bloque le microphone va aider dans cette situation. Il est déjà bloqué. Mais merci pour la suggestion.

1 votes

Cette application devait alerter lorsque le microphone était activé. Approche de logcat postée - pas sûr si cela répond entièrement à votre objectif.

1voto

Firelord Points 23064

Je ne suis pas sûr de Nougat mais cela fonctionne pour Android 6.0.1. Exécutez :

adb shell dumpsys audio

Dans la sortie, cherchez sous Entrées de la pile de focus audio (la dernière est en haut de la pile). Par exemple, lorsque j'avais une application d'enregistrement audio utilisant le microphone, la sortie était la suivante :

Entrées de la pile de focus audio (la dernière est en haut de la pile) :
  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=

Ici, le package utilisant le microphone est com.sonymobile.androidapp.audiorecorder.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X