Переключение треков в любом плеере

  1. public void nextTrack() {
  2.     pressKey(KeyEvent.KEYCODE_MEDIA_NEXT);
  3. }
  4.  
  5. public void prevTrack() {
  6.     pressKey(KeyEvent.KEYCODE_MEDIA_PREVIOUS);
  7. }
  8.  
  9. private void pressKey(int key) {
  10.     sendKey(KeyEvent.ACTION_DOWN, key);
  11.     sendKey(KeyEvent.ACTION_UP, key);
  12. }
  13.  
  14. private void sendKey(int action, int key) {
  15.     final long time = SystemClock.uptimeMillis();
  16.     final Intent intent = new Intent(Intent.ACTION_MEDIA_BUTTON, null);
  17.     final KeyEvent keyEvent = new KeyEvent(time, time, action, key, 0);
  18.     intent.putExtra(Intent.EXTRA_KEY_EVENT, keyEvent);
  19.     sendOrderedBroadcast(intent, null);
  20. }
Посылает события нажатия медиа-кнопок. Кроме переключения треков, можно послать событие любой другой медиа-кнопки.

Реклама

Мы в соцсетях

tw tg yt gt