2016-02-01 12 views
12

Trong Android, tôi cần được thông báo khi chế độ âm thanh hiện tại bị thay đổi.Android: Được thông báo khi Chế độ hiện tại bên trong AudioManager bị thay đổi

Tôi có thể nhận giá trị này thông qua getMode() nhưng đây là cuộc thăm dò ý kiến.

Tôi không muốn thăm dò ý kiến ​​vài giây một lần.

Tùy chọn của tôi là gì?

(Xin lưu ý rằng tôi không yêu cầu về ringerMode)

+0

bạn đã thử nghe AudioManager.RINGER_MODE_CHANGED_ACTION chưa? –

+0

"Xin lưu ý rằng tôi không hỏi về ringerMode" –

Trả lời

3

Bạn có thể sử dụng AudioFocus cho các thiết bị chạy hệ điều hành Android phiên bản 2.2 và cao hơn, preassuming ứng dụng của bạn cũng được phát âm thanh.

Bạn có thể đăng ký thay đổi tập trung âm thanh và sau đó nghe phương pháp onAudioFocusChange(int focusChange). Bằng cách này, bạn sẽ được thông báo về các thay đổi chế độ âm thanh cũng như các thay đổi tập trung âm thanh khác. Tôi hi vọng cái này giúp được.

Bạn cũng có thể sử dụng PhoneStateListener để nghe các thay đổi trạng thái của điện thoại và các chế độ âm thanh tương ứng.

1

http://developer.android.com/reference/android/media/AudioManager.html

giao diện AudioManager.OnAudioFocusChangeListener

Interface định nghĩa cho một callback được gọi khi tập trung âm thanh của hệ thống được cập nhật.

đặt cài đặt này sẽ cho bạn sử dụng phương thức onAudioFocusChange. Điều này sẽ phát hiện các thay đổi Chế độ trong số những thứ khác.

Các vấn đề liên quan