Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
  1. XCode → Signing & Capabilities → Background modes

  2. Depends what you want to achieve with silent push, turn on Background fetch or Background processing or both.

At AppDelegate file you need to add those two methods to handle silent push content.

Code Block
languageswift
func application(_ application: UIApplication, performFetchWithCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {
        print("perform fetch completition")
        Appoxee.shared()?.performFetch(completionHandler: nil, andNotifyCompletionWith: { (error, data) in
            if (NSNumber.isKind(of: data as! AnyClass)) {
                print(data ?? "no date");
                completionHandler(.newData)
            }
            completionHandler(.noData)
        })
    }
    
    func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {
        print(userInfo)
        Appoxee.shared()?.didReceiveRemoteNotification(userInfo, fetchCompletionHandler: completionHandler, andNotifyCompletionWith: { (error, data) in
            if ((error) != nil) {
                completionHandler(.failed)
            } else {
                //// No need to pefrom any action, since Appoxee will call completionHandler() providing it a UIBackgroundFetchResult.
            }
        })
    }