Код: Выделить всё
Intent intent = new Intent(Intent.ACTION_MEDIA_BUTTON);
intent.setPackage("com.google.android.apps.youtube.music");
intent.setAction("com.google.android.youtube.music.pendingintent.controller_widget_next");
sendBroadcast(intent);
Код: Выделить всё
ImmutableSet list = SessionToken.getAllServiceTokens(this);
for (SessionToken t: list) {
System.out.println("token: " + t.getPackageName());
if (t.getPackageName().equals("com.google.android.apps.youtube.music")) {
Из этого токена я собираюсь получить MediaController, следующим образом;
MediaController.Builder builder = new MediaController.Builder(this, t);
ListenableFuture future = builder.buildAsync();
future.addListener(() -> {
try {
controller = future.get();
Log.d(LOG, "controller: " + controller);
// The session accepted the connection.
} catch (Exception e) {
if (e.getCause() instanceof SecurityException) {
// The session rejected the connection.
}
Log.e(LOG, "bummer", e);
}
}, ContextCompat.getMainExecutor(this));
< /code>
Однако это, похоже, терпит неудачу с какой -то проблемы с разрешением; < /p>
onConnectFailed for ComponentInfo{com.google.android.apps.youtube.music/com.google.android.apps.youtube.music.mediabrowser.MusicBrowserService}
< /code>
, который я не могу преодолеть. Но используя правильный mediaContoller.stop () и вещи, чувствует себя способ. Это также должно привести меня к тому, что играет и т. Д.
Подробнее здесь: https://stackoverflow.com/questions/796 ... r-activity
Мобильная версия