更改锁屏背景音频控件文本?

Posted

技术标签:

【中文标题】更改锁屏背景音频控件文本?【英文标题】:Change lock screen background audio controls text? 【发布时间】:2011-09-29 20:17:07 【问题描述】:

我有一个使用 AVAudiosession 流式传输背景音频的 iOS 应用。它工作正常,但我很好奇,有没有办法更改锁屏音频控件上的文本?现在它只是显示我的应用程序的名称,但我想将其更改为轨道的名称。

此外,多任务栏在控件下方没有文本 - 有没有办法像 iPod 应用程序那样在其中添加曲目名称?

【问题讨论】:

有人知道如何使用网络音频吗? 【参考方案1】:

iOS 5 现在支持在锁定屏幕和远程播放控件(双击主页按钮并向右滑动时获得的控件)中设置曲目标题以及专辑封面图像。看看 MPNowPlayingInfoCenter 班级。当然,为了最大限度地提高兼容性,您需要测试MPNowPlayingInfoCenter 是否可用,方法如下:

if ([MPNowPlayingInfoCenter class])  
   /* we're on iOS 5, so set up the now playing center */
   UIImage *albumArtImage = [UIImage imageNamed:@"HitchHikersGuide"];
   albumArt = [[MPMediaItemArtwork alloc] initWithImage:albumArtImage];

    NSDictionary *currentlyPlayingTrackInfo = [NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:@"Life, the Universe and Everything", [NSNumber numberWithInt:42], albumArt, nil] forKeys:[NSArray arrayWithObjects:MPMediaItemPropertyTitle, MPMediaItemPropertyPlaybackDuration, MPMediaItemPropertyArtwork, nil]];
    [MPNowPlayingInfoCenter defaultCenter].nowPlayingInfo = currentlyPlayingTrackInfo;

【讨论】:

你想在这里使用 classFromString 因为这会导致低级操作系统崩溃 不。在 iOS 4.x 中没有正式的设置方法。我什至认为没有非官方的方式可以做到这一点。【参考方案2】:

这里很快! (无需再检查 iOS 5 及更高版本)

let albumArt = MPMediaItemArtwork(image: UIImage(named:"HitchHikersGuide"))
let albumDict = [MPMediaItemPropertyTitle: "Life, the Universe and Everything", MPMediaItemPropertyPlaybackDuration: 42, MPMediaItemPropertyArtwork: albumArt]
MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo = albumDict

【讨论】:

以上是关于更改锁屏背景音频控件文本?的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序背景音频播放

播放音频时设置自定义元数据(控制中心、锁屏...)

克服锁屏+静音模式播放音频

锁屏界面音频控制

如何在 iOS 锁屏控制面板中启用音频清理器?

使用 css 更改 HTML5 中的音频背景颜色