/ / Иницииране на изтеглянето, докато iOS устройството е заключено или приложението е в заден план - обекти-c, ios, xcode, ios5

Стартирайте Изтегляне, докато iOS устройството е заключено или приложението е в заден план - обектите c, ios, xcode, ios5

Ще пускам музика с помощта на AVAudioPlayer. След като завърши една песен, следващата песен в плейлиста се изтегля с помощта на NSURLConnection.

Където съм се забил: Искам да мога да изтегля следващия аудио файл в плейлиста и да започне възпроизвеждането във фонов режим, докато телефонът е заключен или докато потребителят използва друго приложение. Как да направя това?

Попаднах на този пост: Възпроизвеждайте музика във фонов режим, като използвате AVAudioplayer което предполага използването [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];, но това само позволява на аудио да се играе във фонов режим, да не се инициира изтегляне.

Със сигурност това е възможно, тъй като Пандора, Spotify и други могат да го направят ... помощ!

Отговори:

1 за отговор № 1

Трябва да поискате системата да ви позволи да влезетена фона, докато изтегляте аудиофайла. Можете да го направите, като използвате метода beginBackgroundTaskWithExpirationHandler: След като изтеглите файла, можете да получите AVAudioPlayer да възпроизвежда вашите файлове.


0 за отговор № 2

Трябва да прочетете документацията на Apple за многозадачност.

http://developer.apple.com/library/ios/#DOCUMENTATION/iPhone/Conceptual/iPhoneOSProgrammingGuide/ManagingYourApplicationsFlow/ManagingYourApplicationsFlow.html#//apple_ref/doc/uid/TP40007072-CH4-SW3

Трябва да добавите клавиш UIBackgroundModes към вашия info.plist за аудио. Това спира приложението ви да бъде спряно и след това всички нормални обратно повиквания ще продължат да се изпълняват.