MediaMonkey for Android dev docs: Difference between revisions

From MediaMonkey Wiki
Jump to navigation Jump to search
No edit summary
Line 52: Line 52:
'''Note:''' Implemented since 1.1.3.468.
'''Note:''' Implemented since 1.1.3.468.


Broadcast Action: This intent has exactly the same usage as '''android.intent.action.MEDIA_BUTTON''' but it is received only by MMA. It is an alternative to '''android.intent.action.MEDIA_BUTTON''' which is also received by other players and it's therefore important which player receives it as first.
Broadcast Action: This intent has exactly the same usage as '''android.intent.action.MEDIA_BUTTON''' but it is received only by MMA. It is an alternative to '''android.intent.action.MEDIA_BUTTON''' except that it avoids the problem of contention between players.


== com.ventismedia.android.mediamonkey.ACTION_START_SYNCHRONIZATION ==
== com.ventismedia.android.mediamonkey.ACTION_START_SYNCHRONIZATION ==

Revision as of 18:18, 25 August 2015

This page contains information for developers who wish to interface with MediaMonkey for Android.

Intents

MMA has broadcast receivers to listen for intents from external apps/remote devices.

android.intent.action.MEDIA_BUTTON

Broadcast Action: This intent is sent when media button is pressed and you can use it to control MMA playback. This intent can control other Android players too.

Input: Includes a single extra field, EXTRA_KEY_EVENT, containing the KeyEvent that caused this event. MMA will respond on these key codes:

  • KeyEvent.KEYCODE_HEADSETHOOK
  • KeyEvent.KEYCODE_MEDIA_PLAY
  • KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE
  • KeyEvent.KEYCODE_MEDIA_PAUSE
  • KeyEvent.KEYCODE_MEDIA_NEXT
  • KeyEvent.KEYCODE_MEDIA_PREVIOUS
  • KeyEvent.KEYCODE_MEDIA_FAST_FORWARD
  • KeyEvent.KEYCODE_MEDIA_REWIND
  • KeyEvent.KEYCODE_MEDIA_STOP

Output: nothing

Examples of use:

Intent intent = new Intent();
intent.setAction("android.intent.action.MEDIA_BUTTON");
intent.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE));

// ATTENTION: Broadcast should be ordered.
sendOrderedBroadcast(intent, null);

intent = new Intent();
intent.setAction("android.intent.action.MEDIA_BUTTON");
intent.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE)); 

// ATTENTION: Broadcast should be ordered.
sendOrderedBroadcast(intent, null);

com.ventismedia.android.mediamonkey.ACTION_MEDIA_BUTTON

Note: Implemented since 1.1.3.468.

Broadcast Action: This intent has exactly the same usage as android.intent.action.MEDIA_BUTTON but it is received only by MMA. It is an alternative to android.intent.action.MEDIA_BUTTON except that it avoids the problem of contention between players.

com.ventismedia.android.mediamonkey.ACTION_START_SYNCHRONIZATION

Broadcast Action: Use it to start MMA wifi synchronization. This synchronization will start on background but it can request user interaction via notifications (like delete and upload confirmations or sync server selection).

Input: nothing

Output: nothing

Examples of use:

sendBroadcast(new Intent("com.ventismedia.android.mediamonkey.ACTION_START_SYNCHRONIZATION"));