Есть ли способ получить информацию о предыдущей песне iPod? - PullRequest
0 голосов
/ 20 марта 2011

Я пытаюсь сохранить время воспроизведения песни (MPMediaItem) до начала воспроизведения следующей песни.Как бы вы это сделали?

Есть ли что-то вроде MPMusicPlayerControllerNowPlayingItemDidChangeNotification, которое запускает до изменения песни?

Ответы [ 3 ]

1 голос
/ 20 марта 2011

Простой: когда песня меняется, установите переменную foo где-то в текущее время, а другую переменную bar установите в текущее время воспроизведения новой песни (обычно это будет 0.0.) Когда песня снова изменитсявычтите значение foo из текущего времени, затем добавьте значение bar;результатом является окончательное смещение песни, которая только что воспроизводилась.

Вам также придется обрабатывать перемотку вперед, перемотку назад, остановку и паузу, но вы можете сделать это, отслеживая состояние воспроизведения и запрашиваятекущее время воспроизведения песни, чтобы синхронизировать себя при необходимости.

1 голос
/ 20 марта 2011

Не думаю, что такое уведомление (Уведомить до смены песни) существует сегодня. Я просто нахожу только два уведомления, которые можно прослушать, чтобы песни изменили состояние.

MPMusicPlayerControllerNowPlayingItemDidChangeNotification,
MPMusicPlayerControllerPlaybackStateDidChangeNotification,

Apple Документация:

http://developer.apple.com/library/ios/#documentation/mediaplayer/reference/MPMusicPlayerController_ClassReference/Reference/Reference.html

0 голосов
/ 20 марта 2011

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

...