2011-11-07 5 views
17

STREAM_SYSTEM을 통해 소리를 재생하는 서비스에서 setVolumeControlStream으로 전화해야합니다. 분명히 아무런 문제가없는 활동이지만 서비스로 어떻게 할 수 있습니까?서비스에서 setVolumeControlStream 호출

답변

3

, 이것은 당신이 그것을 시도하는 방법으로 수 없습니다.

바와 같이 제안 된 오디오 스트림이 활동에는 활동이없는 서비스에 따라서

의 창으로 연결됩니다 android reference

에 말했다 넥타이 할 창 없다 오디오 스트림을.

그러나 액티비티가 보이지 않는 상태에서 서비스 볼륨을 변경할 수있는 here과 같이 방송사의 미디어 키 이벤트 (볼륨 키 포함)를 수신 할 수 있어야합니다.

+0

이 솔루션을 살펴 보았지만 작동하지 않는 것 같습니다. 방송 수신기를 사용하여 볼륨 키 이벤트를 수신 할 방법이 없습니다. 게시 한 링크에서 android.intent.action.MEDIA_BUTTON은 재생/일시 중지, 다음, 이전 등의 재생 버튼에 사용됩니다. 볼륨 버튼은 없습니다. –

+0

내 실수는, 나는 이것이 서비스에서 불가능한 것 같아요. 따라서 앱이 볼륨 이벤트를 캡처하는 것을 중단하고 사용자가 벨소리 볼륨/시스템 볼륨을 변경하는 기능을 방해하는 것 같습니다. STREAM_MUSIC을 사용할 수없는 이유가 있습니까? – Guykun

+0

내 경우에는 앱이 음악을 재생하는 동안 다른 앱을 음소거하고 싶기 때문입니다. 다른 모든 응용 프로그램이 STREAM_MUSIC을 사용하기 때문에 내가 찾은 해결책은 STREAM_MUSIC을 음소거하고 다른 스트림을 사용하는 것이 었습니다. –