В дополнение к ответу Мориона:
Вы можете отключить автоматическую блокировку экрана следующим вызовом:
[UIApplication sharedApplication].idleTimerDisabled = YES;
Вы также можете убедиться, что воспроизведение продолжается, пока экран заблокирован вручную. Для этого вам нужно создать AudioSession:
AudioSessionInitialize(NULL, NULL, audioInterruptionListener, NULL);
UInt32 category = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory,
sizeof(category), &category);
AudioSessionSetActive(YES);
audioInterruptionListener должна быть функцией, которая обрабатывает случаи, когда воспроизведение звука прерывается (например, во время входящего вызова) Вы можете прочитать больше об этом здесь .