3

最近发布了一个问题,如何从音乐应用程序 spotify 中播放当前歌曲,似乎没有简单的方法可以做到这一点。

至少在 4.0+ 中的 android 锁屏将显示当前歌曲并适用于几乎所有音乐播放器,包括 spotify。所以我的问题是锁屏是如何获取这些信息的?

4

2 回答 2

5

在 Android 4.0 和 4.1 上,您看到的锁屏部分称为“遥控器”。你可以打电话registerRemoteControlClient()给它提供信息。

在 Android 4.2+ 上,欢迎您创建自己的具有锁屏功能的应用小部件。

于 2013-01-26T13:16:27.827 回答
2

通过广播接收器,您可以创建广播接收器并在清单中为其定义过滤器。然后所有发送此广播的音乐应用程序将触发您的 onReceive 方法,以及从应用程序发送的信息。

编辑:

Intent intent = new Intent("com.android.music.playstatechanged");
    intent.putExtra("playing", (mState & FLAG_PLAYING) != 0);
    if (song != null) {
        intent.putExtra("track", song.title);
        intent.putExtra("album", song.album);
        intent.putExtra("artist", song.artist);
        intent.putExtra("songid", song.id);
        intent.putExtra("albumid", song.albumId);
    }
    sendBroadcast(intent);

这是股票播放器中用于发送广播的代码,查看广播接收器,您就能够弄清楚如何获取所需的数据。

此外,您还需要找到适用于 spotify、AFIK 的过滤器。这适用于 soptify。“com.android.music.metachanged”或看这里http://pastebin.com/ukfPnZwg

于 2013-01-26T12:02:49.030 回答