MediaPlayer API 允许与 Now Playing Center 交互,管理 Now Playing Info,并响应远程控制事件。以下是使用指南、最佳实践及示例。
MediaPlayer API 提供对媒体播放信息的控制及远程命令处理。入门步骤如下:
nowPlayingInfo,用于显示当前媒体信息。setAvailableCommands() 配置可用的命令。commandHandler,以响应远程事件。nowPlayingInfonowPlayingInfo 对象显示当前播放媒体的元数据。将其设置为 null 可清除 Now Playing Info Center。
属性:
title: string (必需)artist: string (可选)albumTitle: string (可选)artwork: UIImage (可选)mediaType: MediaType (可选)audio。playbackRate: number (可选)0。elapsedPlaybackTime: DurationInSeconds (可选)0。playbackDuration: DurationInSeconds (可选)0。playbackState 属性指示应用的当前播放状态:
unknown: 默认状态,播放状态未定义。playing: 正在播放。paused: 播放已暂停。stopped: 播放已停止。interrupted: 播放被外部事件中断。setAvailableCommands(commands: MediaPlayerRemoteCommand[])指定用户可交互的远程命令。
示例:
commandHandler回调函数,用于处理远程命令。注册此函数以处理命令(如 play、pause 或 seekBackward)。
示例:
支持的命令:
play、pause、stop、nextTrack、previousTrackseekBackward、seekForward、skipBackward、skipForwardrating、like、dislike、bookmarkchangeRepeatMode、changeShuffleModeenableLanguageOption、disableLanguageOptionnowPlayingInfo。nowPlayingInfo,避免显示过期信息。以下是 MediaPlayer 的完整实现: