Отслеживание deeplink на iOS

Начиная с версии SDK iOS 4.0 отслеживание открытия приложения через Deeplink работает автоматически.

Отслеживание открытий необходимо для корректного трекинга ремаркетинг-кампаний.

Примечание

Для работы с Universal Links добавьте их поддержку в вашем приложении.

Чтобы вручную отслеживать открытия приложения с помощью deeplink или Universal Links, или обработку deeplink в запущенном приложении, используйте метод +handleOpenURL: класса YMMYandexMetrica.

Чтобы вручную отслеживать открытия приложения с помощью deeplink или обработку deeplink в запущенном приложении, необходимо в UIApplicationDelegate добавить следующие изменения:

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
    return [YMMYandexMetrica handleOpenURL:url];
}
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options
{
    return [YMMYandexMetrica handleOpenURL:url];
}

// Delegate for tracking Universal links.
- (BOOL)application:(UIApplication *)application
    continueUserActivity:(NSUserActivity *)userActivity
    restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler
{
    if ([userActivity.activityType isEqualToString:NSUserActivityTypeBrowsingWeb]) {
        [YMMYandexMetrica handleOpenURL:userActivity.webpageURL];
    }
    return YES;
}

Отслеживание открытий необходимо для корректного трекинга ремаркетинг-кампаний.

Примечание

Для работы с Universal Links добавьте их поддержку в вашем приложении.

Чтобы отслеживать открытия приложения с помощью deeplink или Universal Links, используйте метод handleOpen(_:) класса YMMYandexMetrica.

Чтобы отслеживать открытия приложения с помощью deeplink, необходимо в UIApplicationDelegate добавить следующие изменения:

func application(_ application: UIApplication, handleOpenURL url: URL) -> Bool {
    return YMMYandexMetrica.handleOpen(url)
}

func application(_ application: UIApplication, openURL url: URL, sourceApplication: String?, annotation: AnyObject) -> Bool {
    return YMMYandexMetrica.handleOpen(url)
}

// Delegate for tracking Universal links.
func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
    if userActivity.activityType == NSUserActivityTypeBrowsingWeb {
        if let url = userActivity.webpageURL {
            YMMYandexMetrica.handleOpen(url)
        }
    }
    return true
}

Если вы не нашли ответ на свой вопрос, то вы можете задать его через форму обратной связи. Пожалуйста, опишите возникшую проблему как можно подробнее. Если возможно, приложите скриншот.

Написать в службу поддержки