Android Q 及更高版本提供了在通知中包含可查找进度条的功能。我正在创建一个从外部存储播放音频文件的应用程序。
我想实现如图所示的进度条。
问题是我已经实现了一个进度条,它是可搜索的,但当用户搜索到搜索栏上的特定位置时,它不会更新媒体播放器。
代码
以下代码设置元数据
mediaSession.setMetadata(MediaMetadataCompat.fromMediaMetadata(new MediaMetadata.Builder().putString(MediaMetadata.METADATA_KEY_TITLE, title) .putLong(MediaMetadata.METADATA_KEY_DURATION, Long.parseLong(listSongs.get(position).getmDuration())).build()));
以下代码检查媒体播放器是否正在播放并设置 PlaybackState
if(mediaPlayer!=null) {
if(!mediaPlayer.isPlaying()){
playbackState = PlaybackState.STATE_PLAYING;
}
else{
playbackState = PlaybackState.STATE_PAUSED;
}
mBuilder = new PlaybackState.Builder()
.setState(playbackState
, musicService.getCurrentPosition()
, 1
)
.setActions(PlaybackState.ACTION_SEEK_TO|
PlaybackState.ACTION_PAUSE |
PlaybackState.ACTION_SKIP_TO_NEXT |
PlaybackState.ACTION_SKIP_TO_PREVIOUS |
PlaybackState.ACTION_PLAY_PAUSE)
;
mediaSession.setPlaybackState(PlaybackStateCompat.fromPlaybackState(mBuilder.build()));
mediaSession.setActive(true);
Run Code Online (Sandbox Code Playgroud) spotify android-mediaplayer exoplayer android-10.0 android-notification.mediastyle