2011-06-06 58 views
5

Quiero comprobar si heaset está conectado o no ... lo hice como estoAudioManager.isWiredHeadsetOn() no funciona en Android

AudioManager am = (AudioManager)getSystemService(AUDIO_SERVICE); 
Log.i("am.isWiredHeadsetOn()", am.isWiredHeadsetOn()+""); 

Pero siempre estoy recibiendo valor falso ...

¿Por qué sucede esto?

+0

En realidad, esto debería funcionar bien. ¿Puedes verificar tu código en otros dispositivos y luego en Folio 100? – inazaruk

+0

Sí, también lo he comprobado en HTC Wildfire también y está dando falso ... ¿Hay algún permiso que deba agregar? –

+0

¿Está probando esto en el emulador o en un dispositivo real? ¿Y qué sistema operativo Android tienes en el emulador o dispositivo? – Jon

Respuesta

12

Parece que esto es un error. Siempre obtendrá false al llamar isWiredHeadsetOn a menos que su permiso complemento MODIFY_AUDIO_SETTINGS a AndroidManifest.xml:

<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> 
+0

Un error de larga duración https://code.google.com/p/android/issues/detail?id=20765 –