在iOS设备的锁屏上添加自定义专辑封面

6
我正在开发一个iOS应用程序,用于流式传输shoutcast音频。
我想在设备锁屏上显示自定义图像(无论播放哪首歌曲,都要显示相同的图像)。
下面的代码向我显示了锁屏上的当前标题,但没有像下面的图片那样显示专辑封面。
是否有可能实现这一点(我认为,Mixcloud可以做到)?如果是,问题出在哪里?源代码在这里。
Class playingInfoCenter = NSClassFromString(@"MPNowPlayingInfoCenter");
if (playingInfoCenter) {
    NSMutableDictionary *songInfo = [[NSMutableDictionary alloc] init];
    UIImage * albumImage = [UIImage imageNamed: @"icon_HD.png"];
    MPMediaItemArtwork * albumArt = [[MPMediaItemArtwork alloc] initWithImage:albumImage];
    [songInfo  setObject:titre.text          forKey:MPMediaItemPropertyTitle];
    [songInfo  setObject:artiste.text        forKey:MPMediaItemPropertyArtist];
    [songInfo  setObject:albumArt            forKey:MPMediaItemPropertyArtwork];
    [[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:songInfo];
}

https://lh6.googleusercontent.com/-yV8VbLatlxg/UoD7Pq-Hv1I/AAAAAAAALVg/UEwKUp00k2U/s1600/iOS-7-lock-screen-music-controls.png


你的标题和艺术家信息是否被正确地更改或设置了? - InfalibleCoinage
是的,所有这些信息都已正确更新。 - David
你找到解决方法了吗?在iOS6上它能正常工作,但在iOS7上却出现了问题...我正在使用类似的代码,也遇到了这个问题。 - cujo30227
@cujo30227:不幸的是没有。 - David
一年后,这个问题有解决方案了吗?所有其他属性都正常工作,只有艺术品没有显示。是的,我设置的MPMediaItemArtwork可以从nowPlayingInfo字典中检索,并且可以通过FB凿子visualize (UIImage *)[0x7ffd7a4a8d20 imageWithSize:CGSizeMake(128, 128)]看到。还有人知道锁屏艺术品显示所需的图像尺寸吗? - user3099609
又过了一年,我们不再支持iOS 7了。就是这样。 - user3099609
1个回答

7

这是我在应用程序中使用的代码。在iOS7上运行良好。

UIImage *image = [UIImage imageNamed:@"myImage.png"];

MPMediaItemArtwork *albumArtwork = [[MPMediaItemArtwork alloc] initWithImage:image];

NSDictionary *info = @{ MPMediaItemPropertyTitle: @"Song Name",
                        MPMediaItemPropertyArtist: @"Artist Name",
                        MPMediaItemPropertyAlbumTitle: @"Album Name",
                        MPMediaItemPropertyPlaybackDuration: 1.0,
                        MPNowPlayingInfoPropertyElapsedPlaybackTime: 1.0,
                        MPMediaItemPropertyArtwork: albumArtwork };

[MPNowPlayingInfoCenter defaultCenter].nowPlayingInfo = info;

如果对你有用,请让我知道。


除了专辑封面之外,所有其他属性都按预期工作。 - user3099609
我收回之前的话,在我的iOS 8设备上运行良好。 - user3099609

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接