Я создал небольшую службу удаленного управления в своем приложении, чтобы управлять музыкальным проигрывателем по умолчанию из моего приложения. Я могу играть, приостанавливаться, пропускать и перемещаться назад, используя методЗапуск музыкального плеера по умолчанию Android в фоновом режиме
private void remoteControl(String CMD) {
Intent i = new Intent("com.android.music.musicservicecommand");
i.putExtra("command", CMD);
getActivity().sendBroadcast(i);
}
и следующие команды.
public static final String CMDTOGGLEPAUSE = "togglepause";
public static final String CMDPREVIOUS = "previous";
public static final String CMDNEXT = "next";
public static final String CMDNAME = "command";
public static final String CMDSTOP = "stop";
public static final String CMDPLAY = "play";
и в моем манифесте я это разрешение
<uses-permission android:name="android.permission.WAKE_LOCK"/>
На данный момент, если мой музыкальный проигрыватель работает или доступна в диспетчере задач можно использовать все элементы управления. Однако, если пользователь не начал процесс музыкального проигрывателя, он не работает. В любом случае, я могу заставить музыкальный проигрыватель начать играть, даже если процесс не был запущен ранее, не покидая моего приложения.