How to clear the remote notification in your app?

前端 未结 8 1835
青春惊慌失措
青春惊慌失措 2021-02-04 03:01

Is there a way to clear the remote notification from the notification banner when swiping down from the top of the iPhone screen. I tried setting the badge number to zero:

8条回答
  •  清酒与你
    2021-02-04 03:33

    In iOS 10, above all solutions are depreciated

    'cancelAllLocalNotifications()' was deprecated in iOS 10.0: Use UserNotifications Framework's -[UNUserNotificationCenter removeAllPendingNotificationRequests]

    Use the below code to cancel notification and reset Badge count

    For iOS 10, Swift 3.0

    cancelAllLocalNotifications deprecated from iOS 10.

    @available(iOS, introduced: 4.0, deprecated: 10.0, message: "Use UserNotifications Framework's -[UNUserNotificationCenter removeAllPendingNotificationRequests]")
    open func cancelAllLocalNotifications()
    

    You will have to add this import statement,

    import UserNotifications
    

    Get notification center. And perform the operation like below

    application.applicationIconBadgeNumber = 0 // For Clear Badge Counts
    let center = UNUserNotificationCenter.current()
    center.removeAllDeliveredNotifications() // To remove all delivered notifications
    center.removeAllPendingNotificationRequests() // To remove all pending notifications which are not delivered yet but scheduled.
    

    If you want to remove single or multiple specific notifications, you can achieve it by below method.

    center.removeDeliveredNotifications(withIdentifiers: ["your notification identifier"])
    

    Hope it helps..!!

提交回复
热议问题