3

到目前为止,这是我尝试让锁定屏幕显示音频 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 defaultCenter 中:

songInfo = [NSDictionary dictionaryWithObjects:[[_podcastArray objectAtIndex:(value - 1)] subarrayWithRange:NSMakeRange(0, imageIndex)] forKeys:_keys];
[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:songInfo];

播客数组是我用这些对象和键保存几个数组的地方。现在,当我进入锁定屏幕时,会显示我想要显示的所有内容(即:标题、艺术家姓名、专辑名称、专辑插图)。但是,我无法出现的一件事是愚蠢的经过时间和持续时间。

我已经做了很多研究并实施了我认为正确的事情,但显然它不正确/不工作。

我真的可以在这里使用一些帮助,谢谢。

4

2 回答 2

1

尝试更换

[NSNumber numberWithFloat:(float)_audioPlayer.currentPlaybackTime]

[NSNumber numberWithDouble:_audioPlayer.currentPlaybackTime]

还要检查 _audioPlayer.duration 是否不为 0。

于 2015-02-11T12:32:39.503 回答
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];

试试这个,希望这有帮助!

于 2015-07-22T11:07:47.267 回答