2013-02-26 7 views
0

백그라운드에서 실행되는 서비스를 만들어야하며 전화 스피커가 사용되는지 여부를 감지해야합니다. 나는 "시끄러운 스피커 이벤트"(ON 또는 OFF) 전화를 듣고 시끄러운 스피커의 상태에 따라 조치를 취해야합니다.Android OS에서 배경에서 실행되는 서비스를 생성하고 시끄러운 스피커가 켜지거나 꺼져 있는지 감지 할 수 있습니까?

+0

당신은 헤드폰이 꽂혀 있는지 없는지 ?? (헤드폰 연결됨은 스피커가 꺼짐을 의미합니다.) – itsrajesh4uguys

+0

스피커 (벨소리가 아님)를 사용할 때마다 내 서비스가 필요합니다. 대화가 진행 중이고 사용자가 전화 스피커를 켠다고 말하면 내 서비스에 응답해야합니다. – Rami

+0

당신은 할 수 있습니다 .. 당신은 Speaker가 무엇을 의미하는지 알고 싶습니다 ?? mediavolume 또는 헤드폰이 막히거나 다른 것이 있습니까? 나는 사용자가 전화를 걸고 소리내는 것에 대해 언급하고 있다고 생각하십니까? – itsrajesh4uguys

답변

0

동작으로 BroadcastReceiver을 등록 할 수 있습니다.이 동작은 사운드 프로필이 변경 될 때 시작됩니다. onReceiver() 안에 AudioManagergetRingerMode() 메서드를 호출하면 RINGER_MODE_NORMAL, RINGER_MODE_SILENT 또는 RINGER_MODE_VIBRATE을 반환 할 수 있습니다. 희망이 도움이됩니다.

+0

Tnx, 곧 시도해 보겠습니다! – Rami

+0

스피커를 사용하는 응용 프로그램에 상관없이 AudioManager.RINGER_MODE_CHANGED가 실행됩니까? – Rami

+0

친애하는 Egor, 나는 내가 오해하고 있었다라고 생각한다. 나는 스피커 (링거가 아닌)가 사용될 때마다 내 서비스가 필요하다. 대화가 진행 중이고 사용자가 전화 스피커를 켭니다. 응답하려면 내 서비스가 필요합니다. (또한 OFF 상태에도 있습니다.) – Rami