How to enable/disable push notification from the app? How to enable/disable push notification from the app? ios ios

How to enable/disable push notification from the app?


you can register and unregister the remote notification with bellow code.

Register RemoteNotification with bellow code..means Enable notification

//-- Set Notificationif ([[UIApplication sharedApplication]respondsToSelector:@selector(isRegisteredForRemoteNotifications)]){    // For iOS 8 and above    [[UIApplication sharedApplication] registerUserNotificationSettings:[UIUserNotificationSettings settingsForTypes:(UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge) categories:nil]];    [[UIApplication sharedApplication] registerForRemoteNotifications];}else{    // For iOS < 8    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:     (UIUserNotificationTypeBadge | UIUserNotificationTypeSound | UIUserNotificationTypeAlert)];}

and Disable it with bellow code.

[[UIApplication sharedApplication] unregisterForRemoteNotifications];


Swift 4

Enable Push Notification (Setup from app):

if #available(iOS 10.0, *) {   // SETUP FOR NOTIFICATION FOR iOS >= 10.0   let center  = UNUserNotificationCenter.current()   center.delegate = self   center.requestAuthorization(options: [.sound, .alert, .badge]) { (granted, error) in         if error == nil{            DispatchQueue.main.async(execute: {               UIApplication.shared.registerForRemoteNotifications()            })          }   }} else {   // SETUP FOR NOTIFICATION FOR iOS < 10.0   let settings = UIUserNotificationSettings(types: [.sound, .alert, .badge], categories: nil)   UIApplication.shared.registerUserNotificationSettings(settings)   // This is an asynchronous method to retrieve a Device Token   // Callbacks are in AppDelegate.swift   // Success = didRegisterForRemoteNotificationsWithDeviceToken   // Fail = didFailToRegisterForRemoteNotificationsWithError    UIApplication.shared.registerForRemoteNotifications()}

Delegate methods to handle push notifications

@available(iOS 10.0, *)func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {}@available(iOS 10.0, *)func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {}func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {    // ...register device token with our Time Entry API server via REST}func application(_ application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: Error) {    //print("DidFaildRegistration : Device token for push notifications: FAIL -- ")    //print(error.localizedDescription)}

Disable Push Notifiacation:

UIApplication.shared.unregisterForRemoteNotifications()