2016-10-25 5 views
3
override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view, typically from a nib. 
    askForPermission() 
} 

@IBAction func addLocalNotification(_ sender: AnyObject) { 

    addLocalNotification()  
} 

func addLocalNotification() { 

    let content = UNMutableNotificationContent() 
    content.title = "iOS10.0" 
    content.body = "Hello Buddy" 
    content.sound = UNNotificationSound.default() 
    // Deliver the notification in five seconds. 
    let trigger = UNTimeIntervalNotificationTrigger.init(timeInterval: 5, repeats: false) 
    let request = UNNotificationRequest.init(identifier: "FiveSecond", content: content, trigger: trigger) 
    // Schedule the notification. 
    let center = UNUserNotificationCenter.current() 
    center.add(request) { (error) in 
     print(error) 
    } 
    print("should have been added") 
} 

func askForPermission() { 

    UNUserNotificationCenter.current().requestAuthorization(options: [.alert,.sound,.badge]) { (granted, error) in 

    } 
} 
+0

Что не так в моем коде. Пожалуйста, помогите мне. Спасибо vadian за выравнивание моего кода. – akshay

+0

Выполняете ли вы делегата для UNUserNotificationCenter? Вы знакомы с приложением после планирования уведомления? По умолчанию он не покажет, работает ли приложение. – Jerry

+0

Почему он не может показать предупреждение, когда приложение находится на переднем плане? – akshay

ответ

7

Вы должны реализовать делегата в UNUserNotificationCenter, чтобы сообщить системе, в которой вы хотите отображать уведомление во время работы приложения. См. Образец здесь: https://github.com/jerbeers/DemoLocalNotification

+0

Спасибо, Джерри .. Он работает.Я получил свою ошибку сейчас .. – akshay