Множество приложений для тревог удалось воспроизвести звук с заблокированным экраном через несколько часов (примеры: «Восход», «Волновой будильник»)iOS: Как звуковые приложения воспроизводятся после того, как приложение неактивно?
Все, что вам нужно сделать, это установить будильник и заблокировать экран, пока приложение открыто, и будильник будет через несколько часов после закрытия экрана.
мне удалось выяснить, как играть аудио с AVPlayer в то время как мое устройство заблокировано:
Набор фоновых возможностей для аудио
Set «приложение не работает в фоновом режиме», чтобы ДА
3.
do {
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
print("AVAudioSession Category Playback OK")
do {
try AVAudioSession.sharedInstance().setActive(true)
print("AVAudioSession is Active")
} catch let error as NSError {
print(error.localizedDescription)
}
} catch let error as NSError {
print(error.localizedDescription)
}
Когда я пытаюсь установить NSTimer или использовать dispatch_after для запуска кода, который воспроизводит мой аудиофайл и блокирует мой iPhone, таймер останавливается довольно быстро, потому что, по-видимому, приложение становится неактивным через несколько секунд (Но только когда я запускаю приложение из главного экрана и не работает, когда я запускаю приложение из xcode, btw)
Есть ли у кого-нибудь идеи, как эти приложения для будильника могут задерживать звук? Спасибо за помощь!
EDIT: Я выяснил, как они это делают. Я подал сигнал тревоги и выслушал динамики. Эти приложения играют тихий звук, чтобы оставаться активным. Не знаю, как они прошли проверку яблоками, но, видимо, многие приложения для будильника делают это и проходят
Местные уведомления, возможно –
nope. локальные уведомления ограничены звуками 30 секунд макс, а также они не звонят при молчании , но эти приложения делают –
Они могут помещать будильник в свой Календарь (событие типа alarm). – Sulthan