Home / Un pò di tutto / iOS 10: Local Notification

iOS 10: Local Notification

local_push_notification

Ciao a tutti cari amici di iProg, oggi voglio mostrarvi come gestire le notifiche locali in iOS 10, ma cosa sono le notifiche locali? le notifiche locali sono un modo per un’applicazione che non è in esecuzione di notificare all’utente un determinato evento. In iOS 10 Apple aggiunge nuove feature alle notifiche, ma le vedremo più avanti nel tutorial.

Quindi per prima cosa creiamo un nuovo progetto di tipo Single View Application.

Per quanto riguarda l’interfaccia dell’ app, basta aggiungere un semplice bottone e collegarlo al codice come action

schermata-2016-10-17-alle-17-43-40

 

import UserNotifications
class ViewController: UIViewController {
override func viewDidLoad() {
 super.viewDidLoad()
 //UNUserNotificationCenter gestisce le attività di "notifica"
 //Per utilizzare le notifiche deve essere chiesto il permesso all'utente 
 //In pratica è quello che facciamo con il metodo requestAuthorization
 UNUserNotificationCenter.current().requestAuthorization(options: [.alert]) { (success, error) in
 if success {
 print("success")
 } else {
 print("error")
 }
 }
 }

A questo punto implementiamo il metodo per l’invio della notifica

@IBAction func notifica(_ sender: AnyObject) {
 // UNMutableNotificationContent contiene i dati relativi alla notifica
 let content = UNMutableNotificationContent()
 content.title = "iOS 10: Local Notification"
 content.subtitle = "iProg.it"
 content.body = "Ciao sono una notifica"
 
 // Logo della notifica
 let imageName = "iprog"
 guard let imageURL = Bundle.main.url(forResource: imageName, withExtension: "png") else { return }
 //UNNotificationAttachment contiene il contenuto multimediale del notifica
 let attachment = try! UNNotificationAttachment(identifier: imageName, url: imageURL, options: .none)
 
 content.attachments = [attachment]
 
 // una richiesta di notifica viene generato con un intervallo di 10 secondi
 let trigger = UNTimeIntervalNotificationTrigger(timeInterval: 10, repeats: false)
 let request = UNNotificationRequest(identifier: "id.notifica.01", content: content, trigger: trigger)
 
 UNUserNotificationCenter.current().add(request, withCompletionHandler: nil)
 }

 

About Diego

Scroll To Top
Si prega di attivare i Javascript! / Please turn on Javascript!

Javaskripta ko calu karem! / Bitte schalten Sie Javascript!

S'il vous plaît activer Javascript! / Por favor, active Javascript!

Qing dakai JavaScript! / Qing dakai JavaScript!

Пожалуйста включите JavaScript! / Silakan aktifkan Javascript!