Я пишу голосовой помощник и хотел бы иметь возможность запускать результаты поиска в Spotify. Чтобы понять, как подключиться к Spotify и другим приложениям, я играю с тестовым приложением Google Media Controller , которое описывается следующим образом:
Создайте простой MediaController, который подключается к MediaBrowserService для тестирования элементов управления мультимедиа между приложениями.
Это приложение работает с образцом Universal Android Musi c Player или любым другим приложением, которое реализует медиа-API.
Когда я запускаю приложение, оно определяет Spotify как предоставляющее MediaBrowserService
, но я получаю сообщение об ошибке при попытке подключиться к Spotify через приложение:

Вот код подключения :
mBrowser = new MediaBrowserCompat(this, mMediaAppDetails.componentName,
new MediaBrowserCompat.ConnectionCallback() {
@Override
public void onConnected() {
setupMediaController();
mBrowseMediaItemsAdapter.setRoot(mBrowser.getRoot());
}
@Override
public void onConnectionSuspended() {
//TODO(rasekh): shut down browser.
mBrowseMediaItemsAdapter.setRoot(null);
}
@Override
public void onConnectionFailed() {
showToastAndFinish(getString(
R.string.connection_failed_msg, mMediaAppDetails.appName));
}
}, null);
mBrowser.connect();
В частности, вскоре после вызова mBrowser.connect()
вызывается метод onConnectionFailed()
обратного вызова.
Означает ли это, что Spotify отклоняет MediaBrowserService
запросов от приложений, не занесенных в белый список (как описано здесь ), и что отдельный автор приложения не может подключиться к MediaBrowserService
Spotify или есть какие-то Ветхий Завет ее способ подключения? FWIW, Google Play Musi c также отклоняет соединения через приложение.
Я также попытался заставить Spotify искать и играть, запустив намерение , но это не удалось.