android - 现在打牌

标签 android android-service android-5.0-lollipop android-tv

我需要有关在“建议”行中显示“正在播放”卡片的帮助。我在 Android 开发者网站上阅读了有关它的帖子,但这对我没有太大帮助。

我有一项服务可以毫无问题地流式传输 MP3 数据。我添加了以下代码,但是没有 Now Playing Card...

@Override
public void onCreate() {
    Log.i(TAG, "onCreate called");

    mSession = new MediaSession(this, "MusicService");
    mSession.setCallback(new MediaSessionCallback());
    mSession.setFlags(MediaSession.FLAG_HANDLES_MEDIA_BUTTONS |
            MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS);

    mSession.setActive(true);
}


private class MediaSessionCallback extends MediaSession.Callback {
}


编辑:为元数据添加代码:

@Override
public void onCreate() {
    Log.i(TAG, "onCreate called");

    mSession = new MediaSession(this, "MusicService");
    mSession.setCallback(new MediaSessionCallback());
    mSession.setFlags(MediaSession.FLAG_HANDLES_MEDIA_BUTTONS |
            MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS);


    final MediaMetadata.Builder metadataBuilder = new MediaMetadata.Builder();

    String title = "Burak";

    metadataBuilder.putString(MediaMetadata.METADATA_KEY_DISPLAY_TITLE, title);
    metadataBuilder.putString(MediaMetadata.METADATA_KEY_DISPLAY_SUBTITLE,
            "Burak müzik");
    metadataBuilder.putString(MediaMetadata.METADATA_KEY_DISPLAY_ICON_URI,
            "http://commondatastorage.googleapis.com/android-tv/Sample%20videos/Zeitgeist/Zeitgeist%202010_%20Year%20in%20Review/card.jpg");

    // And at minimum the title and artist for legacy support
    metadataBuilder.putString(MediaMetadata.METADATA_KEY_TITLE, title);
    metadataBuilder.putString(MediaMetadata.METADATA_KEY_ARTIST, "BKD Mobile");

    mSession.setMetadata(metadataBuilder.build());

    mSession.setActive(true);


}

最佳答案

我会说你需要通过 Metadata.Builder 指定当前播放的 MP3 文件的元数据类:

MediaMetadata.Builder metadataBuilder = new MediaMetadata.Builder();
metadataBuilder.putString(MediaMetadata.METADATA_KEY_DISPLAY_TITLE,
        "Title");
metadataBuilder.putString(MediaMetadata.METADATA_KEY_DISPLAY_SUBTITLE,
        "Subtitle");
metadataBuilder.putString(MediaMetadata.METADATA_KEY_DISPLAY_ICON_URI,
        "Artwork");
mSession.setMetadata(metadataBuilder.build());

关于android - 现在打牌,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29945306/

相关文章:

android - 日/夜主题在 android 中未正确实现

android - 具有适用于 Android 和 iOS 的相互证书的消息安全性

Android _ 从服务类重定向到另一个 Activity ?

android - 在 Lollipop 中清除 DNS 缓存的 Root Shell 命令?

android - 创建新用户后设置

android - 尝试在 Android Studio 中添加 Crashlytics(找不到方法...)

android - 相机 Android App Listview

android - 对于积极重复的警报,哪个更好 Alarm 或 Service with Timer 任务?

android - 如何在单独的线程上运行服务?

java - 4.4.4 上的 android.view.InflateException 而 5.0 则没问题