Android 安卓10搜索栏通知
有人知道android 10中通知的seekbar功能吗 我似乎无法让位置指示器显示当前位置。 该栏为空,但我可以通过单击通知栏来查找媒体 我有普通的notification builder代码,我添加了这个代码,以便在libvlc的“MediaPlayer.Event.Playing”事件中可以单击seekbarAndroid 安卓10搜索栏通知,android,notifications,seekbar,Android,Notifications,Seekbar,有人知道android 10中通知的seekbar功能吗 我似乎无法让位置指示器显示当前位置。 该栏为空,但我可以通过单击通知栏来查找媒体 我有普通的notification builder代码,我添加了这个代码,以便在libvlc的“MediaPlayer.Event.Playing”事件中可以单击seekbar MediaMetadataCompat.Builder metadataBuilder = new MediaMetadataCompat.Builder(); metadata
MediaMetadataCompat.Builder metadataBuilder = new MediaMetadataCompat.Builder();
metadataBuilder.putLong(MediaMetadataCompat.METADATA_KEY_DURATION, mMediaPlayer.getLength());
PlaybackStateCompat.Builder mStateBuilder = new PlaybackStateCompat.Builder()
.setState(PlaybackStateCompat.STATE_PLAYING, 1, 1.0f)
.setBufferedPosition(mMediaPlayer.getLength())
.setActions(
PlaybackStateCompat.ACTION_PLAY |
PlaybackStateCompat.ACTION_PAUSE |
PlaybackStateCompat.ACTION_SKIP_TO_NEXT |
PlaybackStateCompat.ACTION_SKIP_TO_PREVIOUS |
PlaybackStateCompat.ACTION_SEEK_TO |
PlaybackStateCompat.ACTION_PLAY_PAUSE);
mediaSession.setMetadata(metadataBuilder.build());
mediaSession.setPlaybackState(mStateBuilder.build());
媒体的播放大约进行了一半,但没有迹象表明其位置
更新:它看起来确实显示了位置,但很难看到通知的颜色是暗的。 由于某些原因,seekbar没有根据通知颜色反转其颜色 如果有人遇到此问题,请将通知背景设置为白色,并查看其是否正在跟踪位置 所以现在我需要弄清楚如何让工具栏在深色背景上显示浅色
您需要添加白色的小图标。您不应该将图标与其他颜色一起使用
NotificationCompat.Builder builder = new NotificationCompat.Builder(service,NOTIFICATION_CHANNEL_ID)
.setSmallIcon(R.drawable.ic_white)
您必须像这样添加歌曲的当前位置
.setState(如果(isplay())PlaybackStateCompat.STATE\u播放其他PlaybackStateCompat.STATE\u暂停,getCurrentPosition().toLong(),1f)
示例-
val stateBuilder = PlaybackStateCompat.Builder()
.setActions(MEDIA_SESSION_ACTIONS)
.setState(
if (isPlaying()) PlaybackStateCompat.STATE_PLAYING else PlaybackStateCompat.STATE_PAUSED,
getCurrentPosition().toLong(), 1f
)
mediaSessionCompat.setPlaybackState(stateBuilder.build())
注意:上述代码在Kotlin中这只出现在某些设备上,而在其他设备上,搜索栏将显示得非常好。此外,在同一台设备上,其他媒体播放器可以完美地显示搜索栏,如Youtube、Youtube Red、Google Play Music等。我不确定是什么原因导致了这种情况,因为我在一台设备上也受到影响,但在另一台设备上没有问题。问题在于小通知图标。请看下面的答案: