Ứng dụng của tôi phát nhạc và tôi muốn có thể tạm dừng/phát/bỏ qua từ bất kỳ thiết bị Bluetooth nào có thể hỗ trợ các nút này (xe hơi, tai nghe, v.v ...). Khi được kết nối qua bluetooth của ô tô, âm thanh sẽ tự động chuyển đến nhưng các nút điều khiển không ảnh hưởng đến luồng âm thanh của ứng dụng của tôi. Thay vào đó, nó sẽ mở trình phát phương tiện mặc định. Làm cách nào để định tuyến các nút này ảnh hưởng đến ứng dụng của tôi?Điều khiển âm thanh Bluetooth trong Android
Trả lời
Bạn đã đăng ký BroadcastReceiver
trong ứng dụng của mình để nghe MEDIA_BUTTON
sự kiện bằng cách sử dụng AudioManager.registerMediaButtonEventReceiver()
?
Sau khi đăng ký, các sự kiện nút có thể được xử lý bằng cách xử lý đối tượng KeyEvent
được đính kèm trong phần bổ sung là EXTRA_KEY_EVENT
. Ví dụ:
@Override
public void onReceive(Context context, Intent intent) {
final KeyEvent event = (KeyEvent) intent.getParcelableExtra(Intent.EXTRA_KEY_EVENT);
if (event.getAction() != KeyEvent.ACTION_DOWN) return;
switch (event.getKeyCode()) {
case KeyEvent.KEYCODE_MEDIA_STOP:
// stop music
break;
case KeyEvent.KEYCODE_HEADSETHOOK:
case KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE:
// pause music
break;
case KeyEvent.KEYCODE_MEDIA_NEXT:
// next track
break;
case KeyEvent.KEYCODE_MEDIA_PREVIOUS:
// previous track
break;
}
}
Điều này Android Developer blog post cũng có một số thông tin tốt về chủ đề này.
Tôi đã thấy các sự kiện 'MEDIA_BUTTON' đến qua nhật ký, vì vậy điều này có vẻ đầy hứa hẹn. Tôi sẽ cho nó đi vào ngày mai. –
Tiếp tục đến accepted answer, hãy lưu ý rằng một trong những mã phím đã thay đổi trong Ice Cream Sandwich:
Các keycode mà được thông qua để chơi/tạm dừng ý định đã thay đổi trong ICS. Xem này http://code.google.com/p/media-button-router/issues/detail?id=10#c5
Mã khóa đã được gửi trước ICS là KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE. Bây giờ có hai mã khóa riêng biệt để phát và tạm dừng (126 và 127).
Đang gửi KEYCODE_MEDIA_PLAY (126) và KEYCODE_MEDIA_PAUSE (127).
- 1. Android: Phát âm thanh qua tai nghe Bluetooth Sco
- 2. thanh tìm kiếm vô hiệu hóa android cho bộ điều khiển âm thanh
- 3. Phát âm thanh có các nút điều khiển trong iOS
- 4. Ghi lại âm thanh và phát âm thanh được điều chế trong Android?
- 5. Không có âm thanh trong Android-x86
- 6. Mix âm thanh trong android
- 7. iOS 4: Điều khiển từ xa cho âm thanh nền
- 8. cách định tuyến âm thanh iPhone sang tai nghe bluetooth
- 9. Android 2.1 Phát hiện âm thanh Bluetooth kết nối/ngắt kết nối
- 10. Định tuyến âm thanh sang Tai nghe Bluetooth (không A2DP) trên Android
- 11. Nhận dạng âm thanh trong Android
- 12. Chỉnh sửa âm thanh trong Android
- 13. Âm thanh Html trong Android Webview
- 14. Cách ghi âm bằng tai nghe bluetooth
- 15. Phát âm thanh nổi trong android
- 16. phát âm thanh từ luồng trong android
- 17. Tắt âm thanh bấm nút trong android
- 18. Điều khiển âm lượng bằng UIslider Iphone?
- 19. iOS: Thiết bị âm thanh Thao tác điều khiển từ xa AudioXuffer (tức là hiệu ứng âm thanh từ micrô)
- 20. âm thanh xung chuyển mạch trên Android
- 21. cách điều chỉnh âm lượng trong ES OpenSL (Android)?
- 22. Cách chọn giữa bluetooth và thiết bị cầm tay cho âm thanh phương tiện
- 23. Âm thanh dải Android từ video
- 24. Android - Phát âm thanh từ tai nghe
- 25. IPHONE: ABPeoplePickerNavigation Thanh điều hướng ẩn của thanh điều khiển
- 26. Âm thanh Android: thay đổi độ cao
- 27. Thông báo Android chỉ phát âm thanh
- 28. Cách phát âm thanh thông báo android
- 29. API nhận dạng âm thanh, SDK (Android)
- 30. Chọn một tập tin âm thanh android
Xin chào, Bạn có thể chia sẻ mã ví dụ cho điều này không? –