2015-01-29 2 views
3

Пока это моя попытка отобразить экран блокировки, сколько прошло времени (прошедшее) в аудио mp3-файле и сколько времени всего аудио mp3 файл ...Отображение продолжительности AVAudio-проигрывателя и прошедшего времени на экране блокировки iPad (фон)

Вот мой массив объектов:

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]; 

Где подкаста массив, где я держу несколько массивов с этими объектами и ключами. Теперь, когда я иду на экран блокировки, отображается все, что мне нужно показать (например: название, имя исполнителя, название альбома, обложка альбома). Тем не менее, единственное, что я не могу найти, это глупое истекшее время и продолжительность.

Я провел много исследований и реализовал то, что, как я думал, было правильным, но, видимо, это неправильно/работает.

Я мог бы действительно помочь здесь, спасибо.

ответ

1

Попробуйте заменить

[NSNumber numberWithFloat:(float)_audioPlayer.currentPlaybackTime] 

с

[NSNumber numberWithDouble:_audioPlayer.currentPlaybackTime] 

Также проверьте, что _audioPlayer.duration не 0.

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]; 

попробуйте это, надеюсь, что это поможет !!!