Notifications locales et push dans la version IOS compatible
J'ai développé local Notifications
dans iOS 10
. Il fonctionne à la perfection. Mais maintenant, comment dois-je code local notifications
et push notification
si l'utilisateur utilise iOS 9
et versions supérieures. Quelqu'un peut-il aider s'il vous plaît?
Ci-dessous est le code dans iOS 10
import UIKit
import UserNotifications
@available(iOS 10.0, *)
class ViewController: UIViewController,UNUserNotificationCenterDelegate {
override func viewDidLoad() {
super.viewDidLoad()
if #available(iOS 10.0, *) {
//Seeking permission of the user to display app notifications
UNUserNotificationCenter.current().requestAuthorization(options: [.alert,.sound,.badge], completionHandler: {didAllow,Error in })
UNUserNotificationCenter.current().delegate = self
}
}
//To display notifications when app is running inforeground
func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {
completionHandler([.alert, .sound, .badge])
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
//Dispose of any resources that can be recreated.
}
@IBAction func buttonPressed(_ sender: UIButton) {
if #available(iOS 10.0, *) {
//Setting content of the notification
let content = UNMutableNotificationContent()
content.title = "hello"
content.body = "notification pooped out"
content.badge = 1
//Setting time for notification trigger
let date = Date(timeIntervalSinceNow: 10)
var dateCompenents = Calendar.current.dateComponents([.year, .month, .day, .hour, .minute, .second], from: date)
let trigger = UNCalendarNotificationTrigger(dateMatching: dateCompenents, repeats: false)
//Adding Request
let request = UNNotificationRequest(identifier: "timerdone", content: content, trigger: trigger)
UNUserNotificationCenter.current().add(request, withCompletionHandler: nil)
}
}
}
source d'informationauteur sindhu kopparati
Vous devez vous connecter pour publier un commentaire.
IOS 11 :- Vous pouvez également utiliser le code suivant pour iOS 11. Pas de n'importe quel type de changement nécessite de pousser et de notification locale
La Création D'Une Demande De Notification
Calendrier De Notification Locale
UIApplicationDelegate
UNUserNotificationCenterDelegate
Uniquement disponible dans ios 10 et au-dessus de la version
La méthode qui sera appelée sur le délégué uniquement si l'application est au premier plan
Vous pouvez présenter la bannière par défaut avec l'aide de la méthode suivante
La méthode qui sera appelée sur le délégué lorsque l'utilisateur a répondu à la notification par l'ouverture de l'application, le rejet de la notification ou de choisir un UNNotificationAction
J'ai fait de cette classe pour Swift 3 qui a une fonction pour demander la permission de notification push et également vous envoyer une notification. Fonctionne sur iOS 9 et iOS 10+.
Utilisation:
Vous pouvez demander la permission de n'importe où:
Et l'envoi d'une notification locale:
Astuce:
Vous pouvez définir la notification à feu à une Date future, dans cet exemple, je suis en utilisant une date d'extension pour obtenir une date ultérieure en quelques minutes à la notification d'incendie. Ce que c'est: