到目前为止,这是我尝试让锁定屏幕显示音频 mp3 文件中经过(经过)的时间以及音频 mp3 文件总共有多少时间......
这是我的对象数组:
NSArray *madMoneyArray = [NSArray arrayWithObjects:[NSString stringWithFormat:@"Episode %d", a],
@"Jim Cramer",
@"Mad Money Podcast",
madMoneyArtwork,
[NSNumber numberWithFloat:(float)_audioPlayer.currentPlaybackTime],
[NSNumber numberWithDouble:(double)_audioPlayer.duration],
[NSNumber numberWithDouble:(double)1.0],
@"MadMoneyPodcast.png",
madMoneyURL, nil];
这是我的键数组:
NSArray *array = [NSArray arrayWithObjects:MPMediaItemPropertyTitle,
MPMediaItemPropertyArtist,
MPMediaItemPropertyAlbumTitle,
MPMediaItemPropertyArtwork,
MPNowPlayingInfoPropertyElapsedPlaybackTime,
MPMediaItemPropertyPlaybackDuration,
MPNowPlayingInfoPropertyPlaybackRate, nil];
我成功地将对象及其键放入MPNowPlayingInfoCenter默认中心:
songInfo = [NSDictionary dictionaryWithObjects:[[_podcastArray objectAtIndex:(value - 1)] subarrayWithRange:NSMakeRange(0, imageIndex)] forKeys:_keys];
[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:songInfo];
播客数组是我使用这些对象和键保存多个数组的地方。现在,当我进入锁定屏幕时,将显示我想要显示的所有内容(即:标题,艺术家姓名,专辑名称,专辑插图)。 然而,我无法出现的一件事是愚蠢的经过的时间和持续时间。
我做了很多研究并实施了我认为正确的做法,但显然它不正确/有效。
我真的可以在这里使用一些帮助,谢谢。
尝试替换
[NSNumber numberWithFloat:(float)_audioPlayer.currentPlaybackTime]
跟
[NSNumber numberWithDouble:_audioPlayer.currentPlaybackTime]
还要检查 _audioPlayer.持续时间是否不为 0。
你的 madMoneyArray 有一些额外的值,用这个替换这个数组
NSArray *madMoneyArray = [NSArray arrayWithObjects:[NSString stringWithFormat:@"Episode %d", a],
@"Jim Cramer",
@"Mad Money Podcast",
madMoneyArtwork,
[NSNumber numberWithFloat:(float)_audioPlayer.currentPlaybackTime],
[NSNumber numberWithDouble:(double)_audioPlayer.duration],
[NSNumber numberWithInt:1],
nil];
试试这个,希望这对!!有所帮助