通知 setStyle 在 sdk30 中不起作用

Posted

技术标签:

【中文标题】通知 setStyle 在 sdk30 中不起作用【英文标题】:Notification setStyle not working in sdk30 【发布时间】:2022-01-11 10:15:19 【问题描述】:

MediaSessionCompat mediaSessionCompat = new MediaSessionCompat(ctx, "tag");

当我设置 .style() 时,不输出通知。 除了设置上下文和标签之外,您还需要在 mediaSessionCompat 中做些什么吗?

【问题讨论】:

什么不起作用?是否显示通知?你在 mediasession 上使用 setMetaData 吗?更新您的问题以提供更多信息。 谢谢。当我设置 .style() 通知未显示时如何在 mediasession 上使用 setMetaData? 【参考方案1】:

如果您在通知上使用setStyle 方法,则需要为 MediaSession 提供元数据。

private void updateMetadata () 
mediaSession.setMetadata(new MediaMetadataCompat.Builder()
                                     .putString(MediaMetadataCompat.METADATA_KEY_ARTIST, song.getArtistTitle())
                                     .putString(MediaMetadataCompat.METADATA_KEY_ALBUM_ARTIST, song.getArtistTitle())
                                     .putString(MediaMetadataCompat.METADATA_KEY_ALBUM, song.getAlbumTitle())
                                     .putString(MediaMetadataCompat.METADATA_KEY_TITLE, song.getTitle())
                                     .putLong(MediaMetadataCompat.METADATA_KEY_DURATION, song.getDuration())
                                     .putLong(MediaMetadataCompat.METADATA_KEY_TRACK_NUMBER, getPosition())
                                     .putBitmap(MediaMetadataCompat.METADATA_KEY_ALBUM_ART, null)
                                     .build());


不要忘记调用此方法,例如当您的数据发生变化时。我不知道你是如何处理的,所以我无法为它提供正确的位置。我会说当歌曲更改时更新通知的同一个地方,这只是一个建议。

【讨论】:

感谢您分享您的知识。

以上是关于通知 setStyle 在 sdk30 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

为啥 UIComponent.setStyleClass() 在 JSF 2.1 转换器中不起作用?

apns-collapse-id 选项在 FCM 中不起作用

APNS 内容可用推送在 iOS 15 中不起作用

通知在android中不起作用

Facebook 注销在新 SDK 中不起作用

推送通知在android studio中不起作用