Bevor Sie eine Benachrichtigung ausgeben, müssen Sie bestätigen, ob Sie die Benachrichtigung zulassen.
python
//Benachrichtigungsberechtigung einholen
UNUserNotificationCenter.current().requestAuthorization(
options: [.alert, .sound, .badge]){
(granted, _) in
if granted{
UNUserNotificationCenter.current().delegate = self
}
}
○ Wenn Sie es nach einer Sekunde ausführen möchten, müssen Sie eine Benachrichtigung mit "UNTimeIntervalNotificationTrigger (timeInterval :, wiederholt :)" erstellen.
python
let content = UNMutableNotificationContent()
content.sound = UNNotificationSound.default
content.title = "Titel"
content.subtitle = "Untertitel"
content.body = "Inhalt"
//Nach der angegebenen Zeit ausführen
let timer = 10
//Erstellen Sie eine Benachrichtigungsanforderung
let trigger = UNTimeIntervalNotificationTrigger(timeInterval: TimeInterval(timer), repeats: false)
let identifier = NSUUID().uuidString
let request = UNNotificationRequest(identifier: identifier, content: content, trigger: trigger)
//Benachrichtigungsanfrage registrieren
UNUserNotificationCenter.current().add(request){ (error : Error?) in
if let error = error {
print(error.localizedDescription)
}
}
Wenn Sie möchten, dass es zur angegebenen Zeit ausgeführt wird, müssen Sie "UNCalendarNotificationTrigger (dateMatching :, wiederholt :)" verwenden, um eine Benachrichtigung zu erstellen.
python
let content = UNMutableNotificationContent()
content.sound = UNNotificationSound.default
content.title = "Titel"
content.subtitle = "Untertitel"
content.body = "Inhalt"
//Geben Sie die Benachrichtigungszeit an
let date = Date()
let newDate = Date(timeInterval: 60, since: date)
let component = Calendar.current.dateComponents([.year, .month, .day, .hour, .minute], from: newDate)
//Eine Anfrage stellen
let trigger = UNCalendarNotificationTrigger(dateMatching: component, repeats: false)
let identifier = NSUUID().uuidString
let request = UNNotificationRequest(identifier: identifier, content: content, trigger: trigger)
//Benachrichtigungsanfrage registrieren
UNUserNotificationCenter.current().add(request){ (error : Error?) in
if let error = error {
print(error.localizedDescription)
}
}
Recommended Posts