2017-09-21 3 views
0

Ich versuche, mich für Kategorien zu registrieren, aber aus irgendeinem Grund kann ich es nicht auf meinem iPhone tun, aber es funktioniert auf Simulator? Ich verwende den folgenden Code zur Registrierung und dann überprüfe ich, welche Kategorien ich abonniert habe. Wenn ich überprüfen, während meine App auf meinem iPhone läuft, sagt es 0 und wenn ich auf Simulator überprüfen sagt 1.Wie kann ich mich für Benachrichtigungskategorien registrieren?

 let snoozeAction = UNNotificationAction(identifier: "SNOOZE_ACTION", 
              title: "Snooze", 
              options: .foreground) 
    let expiredCategory = UNNotificationCategory(identifier: "TIMER_EXPIRED", 
               actions: [snoozeAction], 
               intentIdentifiers: [], 
               options: UNNotificationCategoryOptions(rawValue: 0)) 
    let center = UNUserNotificationCenter.current() 
    center.setNotificationCategories([expiredCategory]) 

ich dann mit

überprüfen
UNUserNotificationCenter.current().getNotificationCategories { categories in 
      print("These are the categories\(categories.count)") 
      print(categories.description) 
     } 

ich nicht Ahnung, was passiert ist!

Antwort

0

Versuchen Sie dies, ich benutze dies und es funktioniert für mich.

func notificationSetup() 
{ 
    if #available(iOS 10.0, *) 
    { 
    let center = UNUserNotificationCenter.current() 
     center.delegate = self 
     center.requestAuthorization(options: [.alert,.badge,.sound]) { granted,error in 
     if (error == nil) { 
     UIApplication.shared.registerForRemoteNotifications() 
     } 
    } 
    let snoozeAction = UNNotificationAction(identifier: "SNOOZE_ACTION", title: "Snooze", options: [.foreground, .authenticationRequired]) 
    let categoryOptions = UNNotificationCategoryOptions(rawValue: 0) 
    let expiredCategory = UNNotificationCategory(identifier: "TIMER_EXPIRED", actions: [snoozeAction], intentIdentifiers: [], options: categoryOptions) 
    let categories = Set([expiredCategory]) 
    center.setNotificationCategories(categories) 

    } 
} 
+0

Hey Dank für die Beantwortung, aber das funktioniert nicht auf einem echten iPhone. Das hat funktioniert oder ein Simulator, aber es macht überhaupt keinen Sinn. – user7097242

+0

Können Sie mehr Code zeigen, wie ich das gleiche in allem gemacht habe und es funktioniert ziemlich gut. –

Verwandte Themen