Руководство по интеграции плагина для Unity V6: интеграция дополнительных средств SDK

Краткий обзор. Дополнительные возможности SDK для реализации API, например, для измерения удалений, атрибуции приглашений пользователей, push-уведомлений и настройки конфиденциальности. 

 Материалы по теме

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

Атрибуция

Измерение количества удалений приложений

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

Чтобы настроить измерение количества удалений, обратитесь к инструкциям для соответствующей операционной системы.

Android - FirebaseiOS
  1. Скачайте Firebase SDK для Unity по адресу: https://firebase.google.com/docs/unity/setup.
  2. Импортируйте FirebaseMessaging.unitypackage в проект.
  3. Импортируйте в проект google-services.json, полученный в консоли Firebase

     Примечание

    SDK Unity Firebase автоматически добавляет получателей манифеста.

  4. Добавьте следующий код в класс Unity, управляющий кодом AppsFlyer:
    using Firebase.Messaging;
    using Firebase.Unity;
  5. Добавьте в Start() method:
    Firebase.Messaging.FirebaseMessaging.TokenReceived += OnTokenReceived;
  6. Добавьте этот метод:
    public void OnTokenReceived(object sender, Firebase.Messaging.TokenReceivedEventArgs token)
    {
    #if UNITY_ANDROID
    AppsFlyerAndroid.updateServerUninstallToken(token.Token);
    #endif
    }

 Руководство по измерению количества удалений для устройств на Android

 Предупреждение

Сценарий. Внедрение SDK Unity Firebase. 

Требование: Не добавляйте следующий вызов метода для enableUninstallTracking (“SenderID”), если вы добавили в ваш проект SDK Firebase Unity.

В противном случае произойдет следующее:

  • SDK Firebase Unity получит идентификатор отправителя из файла google-services.json, который был добавлен ранее.
  • В этом случае Android может выдать предупреждение об отладке.

Настройка дополнительных пользовательских данных

Для интеграции на уровне плагина с несколькими внешними партнерскими платформами (включая Segment, Adobe и Urban Airship), необходимо использовать API setAdditionalData.

Используйте этот API, только если в руководстве по интеграции партнера явно указано, что требуется API setAdditionalData.

Пример: код для setAdditionalData

Dictionary<string, string> CustomDataMap = new Dictionary<string, string>();
CustomDataMap.Add("custom_param_1", "value_of_param_1");
AppsFlyer.setAdditionalData(CustomDataMap);

Sessions (Сеансы)

Настройка временного интервала между сеансами

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

AppsFlyer.setMinTimeBetweenSessions(custom_time_ins_seconds);

Внимание! Установка большого значения интервала между запусками может отрицательно сказаться на работе API, которые используют данные сеансов, например, для диплинкинга.

См. дополнительную информацию о подсчете сеансов.

Фоновые сеансы для служебных приложений

Недоступно в Unity.

Собственные каналы взаимодействия

Разрешение упакованных URL-адресов глубинных ссылок

Некоторые сторонние службы (например, поставщики услуг электронной почты):

  • Упаковывают ссылки в сообщениях электронной почты, используя свои собственные домены регистрации кликов.
  • Позволяют вам настраивать ваши собственные домены регистрации кликов.

Упаковка ссылки OneLink в такие домены может привести к ограничению ее функциональных возможностей. Чтобы обойти это:

  • Вызовите API setResolveDeepLinkURLs перед инициализацией SDK.
  • API получает ссылки OneLink от доменов кликов, которые запускают приложение. 

Сценарий: домены регистрации кликов выполняют перенаправление на ссылку OneLink по адресу https://mysubdomain.onelink.me/abCD.

Решение:

  • Используйте API setResolveDeepLinkURLs для получения ссылки OneLink, на которую домены регистрации кликов перенаправляют пользователя приложения.
  • Этот метод API получает список доменов, разрешение которых выполняет плагин.
  • Следующий код позволит вам использовать домен регистрации кликов, сохраняя при этом функциональные возможности OneLink:

     Пример

    AppsFlyer.setResolveDeepLinkURLs("example.com", "click.example.com");

Теперь используйте данные из ссылки OneLink для диплинкинга и персонализации пользовательского контента.

Регистрация push-уведомлений

Регистрируйте push-уведомления при проведении кампаний по ретаргетингу.

Для регистрации push-уведомлений:

  • Вызовите метод sendPushNotificationData.
  • Этот метод содержится в методе onCreate для каждой активности, которая запускается после клика на уведомлении:
#if UNITY_ANDROID && !UNITY_EDITOR
AppsFlyerAndroid.handlePushNotifications();
#endif

Более подробные сведения об измерении push-уведомлений см. здесь.

Атрибуция приглашений пользователей

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

Атрибутируйте и регистрируйте установки, источником которых являются приглашения, отправленные пользователями из вашего приложения. Атрибуция приглашений пользователей.

Атрибуция кампаний перекрестной рекламы

Перекрестная реклама приложений может стимулировать дополнительные установки. 

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

Идентификаторы пользователей

Получение AppsFlyer ID

Идентификатор AppsFlyer ID создается для каждой новой установки приложения. Используйте AppsFlyer ID, чтобы:

 Чтобы получить уникальный AppsFlyer ID:

string AppsFlyerUID = AppsFlyer.getAppsFlyerId();

Установка Customer User ID

Установите свой уникальный ID пользователя (CUID) и свяжите его с уникальным AppsFlyer ID.

Уникальный CUID: 

  • Его можно посмотреть в CSV-отчетах AppsFlyer по необработанным данным.
  • Он может использоваться в API постбэков для связывания внутренних идентификаторов.

Чтобы настроить CUID, используйте:

AppsFlyer.setCustomerUserId("someId");

Рекомендуется! Установите CUID на раннем этапе продвижения приложения — он будет связываться с включаемыми в отчеты событиями только с момента его настройки.

Вызовите setCustomerUserId до вызова startSDK

  • Зарегистрированные события будут связаны с CUID.
  • Связанные данные появятся в отчетах необработанных данных по установкам и событиям.
AppsFlyer.setCustomerUserId("someId");

Получить идентификатор пользователя

Дополнительная информация: см. CUID.

Задержка инициализации плагина для идентификатора customerUserID

Установите идентификатор пользователя (CUID) и только после этого инициализируйте плагин. Это полезно, если вы хотите, чтобы идентификатор пользователя содержался в ваших данных об установках и событиях.

Воспользуйтесь следующими инструкциями операционной системы:

  1. Android;
  2. iOS.

 Предупреждение

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

Сбор OAID

OAID — один из уникальных идентификаторов устройства, позволяющий проводить атрибуцию.

Для сбора OAID:

Плагин Unity V5.4 и выше Плагин Unity V5.3 и ниже

По умолчанию OAID собирается автоматически. Чтобы отказаться, вызовите AppsFlyerAndroid.setCollectOaid(false);.

Конфиденциальность данных пользователей

Отказ от использования данных

Различные сценарии, такие, как несоблюдение правовых норм и требований по обеспечению конфиденциальности, могут привести к решению об отказе от использования данных и прекращению регистрации (отслеживания). 

Практические рекомендации! Следуйте в точности инструкциям для сценария, применимого для вашего приложения.

Чтобы прекратить отслеживание:

  • Вызовите stopSDK и установите значение true.
    AppsFlyer.stopSDK(true);
  • Плагин прекратит работу и обмен данными с серверами AppsFlyer.

Чтобы возобновить отслеживание: вызовите stopSDK и установите значение "false".

 Внимание

Используйте API stopSDK, если требуется полностью прекратить отслеживание действий конкретного пользователя приложения. Использование этого API существенно влияет на атрибуцию, сбор данных и механизм диплинкинга.

Анонимизация пользовательских данных

Анонимизируйте идентификаторы определенных пользователей в аналитике AppsFlyer, чтобы обеспечить соответствие требованиям законов о защите конфиденциальных данных, а также политик Facebook в отношении обработки данных и конфиденциальности.

Чтобы анонимизировать пользователя приложения:

  1. Установите API в течение установки SDK
  2. Вызовите anonymizeUserи установите значение true.
    AppsFlyer.anonymizeUser(true);
  3. Установки, события и сессии анонимизированы.

Чтобы возобновить отслеживание: вызовите anonymizeUser и установите значение false.

 Предупреждение

Анонимизация пользователей существенно влияет на данные атрибуции. Используйте этот параметр только для регионов, в которых законодательно запрещен сбор информации о пользователях.

Прекратить предоставлять данные партнерам

В некоторых случаях рекламодатели должны прекратить передачу рекламным сетям / партнерам данных по определенным пользователям. Причины могут быть следующие:

  • Политики конфиденциальности, такие как CCPA или GDPR.
  • Отказ пользователей от предоставления данных
  • Конкуренция с некоторыми партнерами (рекламными сетями, третьими сторонами)

AppsFlyer предоставляет два метода API для прекращения обмена данными с некоторыми или всеми партнерами:

  • setSharingFilterИспользуется рекламодателями, чтобы задать несколько сетей/интегрированных партнеров, которым нужно прекратить предоставлять данные.
  • setSharingFilterForAllPartners. Используется рекламодателями, чтобы прекратить предоставлять данные всем сетям/интегрированным партнерам.

Эти методы фильтрации поддерживаются в SDK начиная с версии V5.4.1.

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

Если метод активирован до первого вызова startSDK:

  • Пользователи из SRN атрибутируются как органические, и их данные не передаются интегрированным партнерам.
  • Пользователи по кликам из рекламных сетей (не SRN) правильно атрибутируются в AppsFlyer, но их данные не передаются в рекламные сети через постбэки, API, отчеты по сырым данным или каким-либо другим способом.

В настоящее время данные об удалении приложения нельзя фильтровать с помощью этих методов. Однако вы можете прекратить отправку событий удаления партнерам, настроив это на их страницах настройкив AppsFlyer. 

Была ли эта статья полезной?