Android Spotify安卓意向游戏发布

Android Spotify安卓意向游戏发布,android,android-intent,spotify,Android,Android Intent,Spotify,我试图让Spotify恢复播放时,从一个意图,但没有太多的运气启动。我想我很快就可以让Spotify启动了,如果我指定搜索一个艺术家,它将自动播放,但实际上我只想让它恢复我上次播放的内容,而我还没有开始工作。这个网站使它看起来成为可能,但我目前所拥有的Spotify只是启动并进入搜索屏幕 以下是我目前的代码: final Intent intent1 = new Intent(MediaStore.INTENT_ACTION_MEDIA_PLAY_FROM_SEARCH);

我试图让Spotify恢复播放时,从一个意图,但没有太多的运气启动。我想我很快就可以让Spotify启动了,如果我指定搜索一个艺术家,它将自动播放,但实际上我只想让它恢复我上次播放的内容,而我还没有开始工作。这个网站使它看起来成为可能,但我目前所拥有的Spotify只是启动并进入搜索屏幕

以下是我目前的代码:

        final Intent intent1 = new Intent(MediaStore.INTENT_ACTION_MEDIA_PLAY_FROM_SEARCH);
        intent1.setComponent(new ComponentName("com.spotify.music", "com.spotify.music.MainActivity"));
        intent1.putExtra(MediaStore.EXTRA_MEDIA_FOCUS, "vnd.android.cursor.item/*");
        intent1.putExtra(SearchManager.QUERY, "");
        intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        if (intent1.resolveActivity(getPackageManager()) != null) {
            startActivity(intent1);
        }

我花了一段时间才弄明白这一点,所以我想我会发布我使用的解决方案。我循环浏览了所有订阅Intent.ACTION\u MEDIA\u按钮的软件包,这时我找到了使其正常工作所需的组件名称:

private void playPlayMusic() {
    Intent i = new Intent(Intent.ACTION_MEDIA_BUTTON);
    i.setComponent(new ComponentName("com.spotify.music", "com.spotify.music.internal.receiver.MediaButtonReceiver"));
    i.putExtra(Intent.EXTRA_KEY_EVENT,new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_PLAY));
    sendOrderedBroadcast(i, null);

    i = new Intent(Intent.ACTION_MEDIA_BUTTON);
    i.setComponent(new ComponentName("com.spotify.music", "com.spotify.music.internal.receiver.MediaButtonReceiver"));
    i.putExtra(Intent.EXTRA_KEY_EVENT,new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_PLAY));
    sendOrderedBroadcast(i, null);
}

我花了一段时间才弄明白这一点,所以我想我会发布我使用的解决方案。我循环浏览了所有订阅Intent.ACTION\u MEDIA\u按钮的软件包,这时我找到了使其正常工作所需的组件名称:

private void playPlayMusic() {
    Intent i = new Intent(Intent.ACTION_MEDIA_BUTTON);
    i.setComponent(new ComponentName("com.spotify.music", "com.spotify.music.internal.receiver.MediaButtonReceiver"));
    i.putExtra(Intent.EXTRA_KEY_EVENT,new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_PLAY));
    sendOrderedBroadcast(i, null);

    i = new Intent(Intent.ACTION_MEDIA_BUTTON);
    i.setComponent(new ComponentName("com.spotify.music", "com.spotify.music.internal.receiver.MediaButtonReceiver"));
    i.putExtra(Intent.EXTRA_KEY_EVENT,new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_PLAY));
    sendOrderedBroadcast(i, null);
}

以下是艺术家在Spotify中搜索和播放的例行程序:

public void playSearchArtist(String artist) {
    Intent intent = new Intent(MediaStore.INTENT_ACTION_MEDIA_PLAY_FROM_SEARCH);
    intent.setComponent(new ComponentName("com.spotify.music", "com.spotify.music.MainActivity"));
    intent.putExtra(MediaStore.EXTRA_MEDIA_FOCUS, MediaStore.Audio.Artists.ENTRY_CONTENT_TYPE);
    intent.putExtra(MediaStore.EXTRA_MEDIA_ARTIST, artist);
    intent.putExtra(SearchManager.QUERY, artist);
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    if (intent.resolveActivity(getPackageManager()) != null) {
        startActivity(intent);
    }
}

以下是艺术家在Spotify中搜索和播放的例行程序:

public void playSearchArtist(String artist) {
    Intent intent = new Intent(MediaStore.INTENT_ACTION_MEDIA_PLAY_FROM_SEARCH);
    intent.setComponent(new ComponentName("com.spotify.music", "com.spotify.music.MainActivity"));
    intent.putExtra(MediaStore.EXTRA_MEDIA_FOCUS, MediaStore.Audio.Artists.ENTRY_CONTENT_TYPE);
    intent.putExtra(MediaStore.EXTRA_MEDIA_ARTIST, artist);
    intent.putExtra(SearchManager.QUERY, artist);
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    if (intent.resolveActivity(getPackageManager()) != null) {
        startActivity(intent);
    }
}

你说过如果你指定一个艺术家,你可以让它自动播放。我不能让它工作。搜索结果出现,但没有自动播放。有什么想法吗?如果我在执行“搜索艺术家”后使用下面的解决方案,它只会播放以前播放的内容。您能发布到目前为止您在代码中的内容吗?在下面添加了另一个答案,用于显示艺术家如何播放。您说过,如果指定艺术家,您可以将其自动播放。我不能让它工作。搜索结果出现,但没有自动播放。有什么想法吗?如果我在执行“搜索艺术家”后使用下面的解决方案,它只会播放以前播放的内容。您能发布到目前为止您在代码中的内容吗?在下面添加了另一个答案以显示艺术家如何播放。这不起作用。刚开始搜索艺术家,但没有播放。然后我升级到Spotify Premium,看看这是否会有所不同——现在它可以工作了!!愚蠢的哦,好吧。现在,我正努力让播放列表发挥作用……请看,这是有道理的,当你不在特价时,他们确实锁定了很多功能。很高兴你让它工作了。这是我获取大部分信息的网站。应该可以帮助你调整播放列表播放。这不起作用。刚开始搜索艺术家,但没有播放。然后我升级到Spotify Premium,看看这是否会有所不同——现在它可以工作了!!愚蠢的哦,好吧。现在,我正努力让播放列表发挥作用……请看,这是有道理的,当你不在特价时,他们确实锁定了很多功能。很高兴你让它工作了。这是我获取大部分信息的网站。应该可以帮助你调整播放列表播放。太好了,我用它来播放音乐,但当Spotify不在后台运行时,它不会播放音乐。你能建议怎么做吗?太好了,我用它来播放音乐,但当Spotify不在后台运行时,它不会播放音乐。你能建议怎么做吗?