Mindbox
React Native SDK

iOS | Настройка гарантированной доставки

1. Настройки в Xcode

Фоновые задачи нужны для работы механизма гарантированной доставки, чтобы SDK мог отправлять события при свернутом приложении.

Для их работы нужно добавить в Info.plist параметры:

  • Required background modes:
    • App downloads content from the network;
    • App processes data in the background;
    • App downloads content in response to push notifications;
  • Permitted background task scheduler identifiers:
    • cloud.Mindbox.$(PRODUCT_BUNDLE_IDENTIFIER).GDAppRefresh;
    • cloud.Mindbox.$(PRODUCT_BUNDLE_IDENTIFIER).GDAppProcessing;
    • cloud.Mindbox.$(PRODUCT_BUNDLE_IDENTIFIER).DBCleanAppProcessing.

2. Регистрация фоновых задач

Чтобы фоновые задачи работали, их нужно зарегистрировать в файле AppDelegate.swift.

SwiftCode
@UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate, UNUserNotificationCenterDelegate { // ... func application( _ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? ) -> Bool { if #available(iOS 13.0, *) { Mindbox.shared.registerBGTasks() } UIApplication.shared.setMinimumBackgroundFetchInterval( UIApplication.backgroundFetchIntervalMinimum ) return true } func application( _ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable: Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void ) { Mindbox.shared.application( application, performFetchWithCompletionHandler: completionHandler ) } }
Last modified on