Глубокая ссылка — это ссылка на конкретный контент в вашем приложении, а не на приложение в целом. Подробную информацию см. в статье Добавление глубоких ссылок в рекламу приложения.
Поддержку глубоких ссылок можно реализовать с помощью универсальных ссылок или пользовательских схем URL.
Прежде чем настраивать поддержку универсальных ссылок в своем приложении для iOS, убедитесь, что выполняются перечисленные ниже требования.
Следуйте рекомендациям Apple, чтобы разрешить приложениям и сайтам ссылаться на ваш контент, в том числе:
обновите свой сайт и настройте sподдержку связанных доменов;
настройте поддержку универсальных ссылок в приложении.
Если все требования соблюдены, вы можете добавить в свое приложение код для измерения на основе агрегированных данных о событиях. Подробную информацию см. в статье Измерение на основе агрегированных данных о событиях.
На Панели приложений добавьте информацию о глубоких ссылках для своего приложения. Перейдите в Панель приложений > Настройки > iOS.
://
. Например, если ваша схема URL выглядит как mytravelapp://
, введите mytravelapp
. Примечание. Это не распространяется как требование для версий iOS ниже iOS16.APP_STORE_ID
.Отсроченный переход по глубоким ссылкам позволяет перенаправить людей в пользовательское представление после установки вашего приложения из магазина.
Его необходимо использовать, если вы настраиваете таргетинг на людей, которые ещё не установили ваше приложение. Если вы показываете рекламу только людям, которые уже установили приложение, отсроченный переход по глубоким ссылкам не понадобится.
Из-за изменений в iOS 14 конечная точка POST /{ad-id}
для кампаний SKAdNetwork больше не поддерживает отсроченный переход по глубоким ссылками.
В состав Facebook SDK для iOS входит продукт App Links, который дает возможность поддерживать отсроченный переход по глубоким ссылкам в приложении. Чтобы настроить отсроченный переход, реализуйте глубокую ссылку и добавьте в приложение показанный ниже код.
Если вы соблюдаете Общий регламент по защите данных и соответствующие рекомендации по использованию Facebook SDK, включайте автоматическую инициализацию SDK, когда конечный пользователь даст согласие, и лишь затем получайте ссылку для отсроченного перехода.
Код для обработки отсроченного перехода по ссылкам:
#import <FBSDKCoreKit/FBSDKCoreKit.h> - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { if (launchOptions[UIApplicationLaunchOptionsURLKey] == nil) { [FBSDKAppLinkUtility fetchDeferredAppLink:^(NSURL *url, NSError *error) { if (error) { NSLog(@"Received error while fetching deferred app link %@", error); } if (url) { [[UIApplication sharedApplication] openURL:url]; } }]; } return YES; }
Код для повторного включения автоматической инициализации SDK (если это необходимо):
#import <FBSDKCoreKit/FBSDKCoreKit.h> - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { if (launchOptions[UIApplicationLaunchOptionsURLKey] == nil) { // Get user consent [FBSDKSettings setAutoInitEnabled:YES]; [FBSDKApplicationDelegate initializeSDK:nil]; [FBSDKAppLinkUtility fetchDeferredAppLink:^(NSURL *url, NSError *error) { if (error) { NSLog(@"Received error while fetching deferred app link %@", error); } if (url) { [[UIApplication sharedApplication] openURL:url]; } }]; } return YES; }
Код для обработки отсроченного перехода по ссылкам:
import FacebookCore func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool { AppLinkUtility.fetchDeferredAppLink { (url, error) in if let error = error { print("Received error while fetching deferred app link %@", error) } if let url = url { if #available(iOS 10, *) { UIApplication.shared.open(url, options: [:], completionHandler: nil) } else { UIApplication.shared.openURL(url) } } } return true; }
Код для повторного включения автоматической инициализации SDK (если это необходимо):
import FacebookCore func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool { // Get user consent Settings.isAutoInitEnabled = true ApplicationDelegate.initializeSDK(nil) AppLinkUtility.fetchDeferredAppLink { (url, error) in if let error = error { print("Received error while fetching deferred app link %@", error) } if let url = url { if #available(iOS 10, *) { UIApplication.shared.open(url, options: [:], completionHandler: nil) } else { UIApplication.shared.openURL(url) } } } return true; }
Проверить настройки Facebook SDK и глубокой ссылки можно с помощью нашего Помощника по рекламе приложений. Его можно найти в разделе инструментов и поддержки. Рекомендуем не запускать рекламу с глубокими ссылками без проверки.
Проверка настройки глубокой ссылкиЕсли выбрана цель "установка приложения", вы можете добавить отложенную глубокую ссылку (глубокую ссылку с отсроченным переходом).
В Ads Manager выберите Создать AdSet и перейдите к пункту Рекламный креатив. Добавьте глубокую ссылку или URL с метаданными App Links Facebook, который перенаправит пользователя на определенный экран приложения после его установки.