Переключение треков в любом плеере
- public void nextTrack() {
- pressKey(KeyEvent.KEYCODE_MEDIA_NEXT);
- }
- public void prevTrack() {
- pressKey(KeyEvent.KEYCODE_MEDIA_PREVIOUS);
- }
- private void pressKey(int key) {
- sendKey(KeyEvent.ACTION_DOWN, key);
- sendKey(KeyEvent.ACTION_UP, key);
- }
- private void sendKey(int action, int key) {
- final long time = SystemClock.uptimeMillis();
- final Intent intent = new Intent(Intent.ACTION_MEDIA_BUTTON, null);
- final KeyEvent keyEvent = new KeyEvent(time, time, action, key, 0);
- intent.putExtra(Intent.EXTRA_KEY_EVENT, keyEvent);
- sendOrderedBroadcast(intent, null);
- }
Посылает события нажатия медиа-кнопок. Кроме переключения треков, можно послать событие любой другой медиа-кнопки.