Могу ли я использовать локальные уведомления iOS, если приложение не запущено (например, приложение "Часы")?

Я хотел бы использовать iOS локально UNNotifications даже если мое приложение не работает. Так же, как мы используем приложение Alarm in Clock. Мы можем настроить будильник, а затем выйти из приложения "Часы", но... звук и уведомление будут запущены вовремя. Мне нужно такое же поведение.

Является ли это возможным?

Выдержка из моего кода:

import UIKit
import UserNotifications

class ViewController: UIViewController, UNUserNotificationCenterDelegate {

    override func viewDidLoad() {
        super.viewDidLoad()

        let content = UNMutableNotificationContent()
        content.title = "Our title"
        content.body = "A body of message"
        UNUserNotificationCenter.current().delegate = self
        content.sound = UNNotificationSound.default()

        let trigger = UNTimeIntervalNotificationTrigger(timeInterval: 60, repeats: false)
        let request = UNNotificationRequest(identifier: "testID", content: content, trigger: trigger)
        UNUserNotificationCenter.current().add(request, withCompletionHandler: nil)  
    }
}

1 ответ

Решение

Проверьте этот документ Apple около 30 секунд

Локальные и удаленные уведомления могут указывать настраиваемые звуки оповещения, которые будут воспроизводиться при доставке уведомления. Вы можете упаковать аудиоданные в файл формата aiff, wav или caf. Поскольку они воспроизводятся системой звукового сопровождения, пользовательские звуки должны быть в одном из следующих форматов аудиоданных:

Линейный PCM

MA4 (IMA / ADPCM)

μLaw

закон

Поместите пользовательские звуковые файлы в комплект вашего приложения или в папку Library/Sounds папки каталога вашего приложения. Пользовательские звуки должны быть менее 30 секунд при воспроизведении. Если пользовательский звук превышает это ограничение, вместо него воспроизводится системный звук по умолчанию.

Встроенные часы приложение от Apple. иметь специальное лечение (ни в коем случае)

Другие вопросы по тегам