Завершите UA Setup
Шаг 3. UA Setup состоит из трёх блоков, которые совпадают с его прогресс-баром: Meta integration, AppsFlyer setup, Prepare the app for testing. Вы вводите значения своего приложения на Meta и авторизуете наш рекламный аккаунт; Appodeal создаёт Meta ad account ID и приложение в AppsFlyer; вы отправляете нам билд, и наш Technical Engineer проверяет его в течение 48 часов.
Прежде чем начать
- Шаг Complete Monetization Setup завершён — иначе на кнопке Send for Review появится подсказка "Complete Monetization Setup step".
- У вас есть доступ к вашему приложению на Meta for Developers.
- Приложения на Meta ещё нет? Мы можем создать его за вас — напишите нам, указав bundle ID (Помощь).
1. Meta Integration
Какие значения нужны
| Значение | Где находится |
|---|---|
| App ID | Meta for Developers, App settings → Basic |
| Client Token | App settings → Advanced → Client Token |
| Install Referrer Decryption Key — только для Android-приложений, 64 символа | App settings → Basic → Android → Google Play Store |
App ID и Decryption Key вводятся в поля дашборда в этом блоке. App ID и Client Token добавляются в билд (Добавьте App ID и Client Token в билд). Decryption Key в билд не добавляется никогда.
Введите значения и запросите UA
-
В блоке 1.2. Provide input введите Facebook App ID и, для Android-приложения, Decryption Key. Кнопки MMP Setup и Request UA становятся активными, как только введён App ID и, на Android, ключ из 64 символов.
-
Нажмите Request UA. Дашборд покажет "Ad Account is now creating for you, please wait a bit so you can copy the ID". Когда поле Ad Account ID заполнится, скопируйте значение иконкой копирования.
-
В своём приложении на Meta откройте App settings → Advanced → Advertising accounts → Authorized ad account IDs — в тексте блока 1.3 визарда он назван "Advertising ad accounts IDs" — вставьте ID и нажмите Save Changes.
-
Убедитесь, что приложение на Meta опубликовано — в левом сайдбаре отображается Published.
-
Выберите Meta integrated.
Добавьте App ID и Client Token в билд
Meta SDK (facebook-core) уже входит в состав Appodeal SDK; устанавливать ничего не нужно.
- Android
- iOS
- Unity
- Flutter
- React Native
Добавьте записи meta-data com.facebook.sdk.ApplicationId и com.facebook.sdk.ClientToken в AndroidManifest.xml, как показано в Configure Meta App.
Добавьте FacebookAppID, FacebookClientToken, FacebookDisplayName и запись fbAPP-ID в CFBundleURLSchemes в Info.plist. Все четыре значения обязательны, даже если вы не показываете рекламу Meta. Подробнее: Configure Meta App.
Откройте Appodeal → Appodeal Settings → Meta Settings, выберите Enable auto configuration, затем введите Meta App ID (Android) / Meta App ID (iOS) и Meta Client Token (Android) / Meta Client Token (iOS) для тех платформ, под которые вы собираете билд. Оставьте включёнными Enable FacebookAutoLogAppEvents и Enable FacebookAdvertiserIDCollection. На странице, встроенной в визард, эта панель по-прежнему называется "Facebook Settings".
Примените вкладки Android и iOS к проектам android/ и ios/.
Примените вкладки Android и iOS к проектам android/ и ios/.
В приложении уже есть собственный Meta (Facebook) SDK
- Авторизуйте Ad Account ID из Request UA в своём приложении на Meta, как в шаге 3.
- Оставьте поля Meta в Appodeal Settings → Meta Settings пустыми.
- Удалите адаптер Meta Analytics из зависимостей Appodeal SDK — в Unity снимите его в Appodeal DM и нажмите Generate.
- Отправьте нам App ID, Client Token и, для Android, Install Referrer Decryption Key (Помощь).
- Убедитесь, что приложение на Meta опубликовано.
Совместимость мы подтверждаем по каждому приложению.
2. AppsFlyer setup
Мы используем AppsFlyer. Адаптер AppsFlyer входит в состав Appodeal SDK, а атрибуция для теста работает на собственном аккаунте AppsFlyer компании Appodeal. Вам не нужно создавать аккаунт AppsFlyer, вводить Dev Key или подключать аккаунт где-либо в дашборде. Ссылка "connect AppsFlyer" во встроенном гайде Meta в блоке 1.1 предназначена для паблишеров, которые подключают собственный аккаунт AppsFlyer, — игнорируйте её.
Сделайте ровно одно из перечисленного:
| Ваша ситуация | Что делать |
|---|---|
| Приложения в AppsFlyer у вас нет | Нажмите MMP Setup — кнопка активна, когда в блоке 1 указан App ID и, на Android, ключ из 64 символов. Мы создаём приложение в AppsFlyer, и статус меняется на Setup is done. Выберите AppsFlyer setup. |
| Приложение уже есть в AppsFlyer | Передайте его нам: AppsFlyer → My Apps → действия в строке ⋮ → Start transfer → e-mail владельца принимающего аккаунта [email protected] (к нопка AppsFlyer Help открывает инструкции самого AppsFlyer по этому диалогу). Затем выберите AppsFlyer setup. Если на кнопке Complete UA Setup всё ещё показывается подсказка "Complete MMP Setup", нажмите ещё и MMP Setup — шаг завершается только после того, как настройка MMP выполнена на нашей стороне. Вернётся ли владение после теста и что будет с историческими данными, мы подтверждаем по каждому приложению (Помощь). |
| Вы используете Singular или другой MMP | Оставьте его: «Оставляйте Singular — это нормально, и он уже интегрирован. Но адаптер AppsFlyer всё равно нужен для нашей BI. Конфликта между ними нет». Ни адаптер, ни pod для Singular не нужны. Затем нажмите MMP Setup, как в первой строке. |
Нужен ли Appodeal SDK, если у вас уже есть MMP? Да. «SDK вместе с адаптером AppsFlyer обязателен — пересылать события в ваш собственный AppsFlyer недостаточно, потому что нам нужны наши адаптеры, чтобы отслеживать установки и метрики кампании на Facebook».
В приложении уже есть собственный AppsFlyer SDK (Unity)
- Оставьте его. Установите его через UPM из
https://github.com/AppsFlyerSDK/appsflyer-unity-plugin.git#upm; при ошибках сборки подберите ту версию AppsFlyer, которую использует адаптер Appodeal, 6.17.1 или выше, через#Strict-v*.*.*— либо через#v*.*.*, если вариант со#Strict-даёт ошибку. - Установите наш плагин GDPR и CCPA (GDPR & CCPA).
- Инициализируйте AppsFlyer до Appodeal SDK:
AppsFlyer.initSDKвAwake→ флоу согласия Appodeal →AppsFlyer.setConsentData→AppsFlyer.startSDK()→Appodeal.Initialize. - Отправьте нам скриншот этого кода (Помощь).
Совместимость мы подтверждаем по каждому приложению.
3. Prepare the app for testing
-
Включите логирование до сборки: Android, iOS, Unity; во Flutter и React Native логирование включается в нативном проекте. На Android также измените
network_security_config.xml, как показано в гайде 3.1 визарда, Prepare the App for Testing. -
Запустите приложение и найдите в логе все три строки:
SDK-Public [Appodeal]: initialize
Service [Info]: FacebookAnalytics - ver. *** initialized
Service [Info]: Appsflyer - ver. version: *** initializedСохраните TXT-файл или скриншот этих трёх строк: добавьте его в архив (Android) или приложите к письму с билдом TestFlight (iOS).
-
Передайте нам билд — два случая, по записи приложения, а не по движку:
- Android app entry (нативное приложение, Unity-Android, Flutter или React Native Android): упакуйте APK в архив (
.zipили.rar, до 100 МБ), загрузите его на Google Drive, вставьте ссылку в поле Link, нажмите Upload, затем нажмите Send for Review. Файл также можно перетащить на область "Click or drag and drop to upload files". - iOS app entry (нативное приложение, Unity-iOS, Flutter или React Native iOS) в режиме Appodeal SDK: блок 3.2 не отображается. Отправьте билд TestFlight на [email protected] и [email protected], затем выберите Testflight has been sent to … (TestFlight отправлен …). Если вместо этого в вашем шаге отображаются поле Link и область загрузки, напишите нам, прежде чем отправлять билд (Помощь).
- Android app entry (нативное приложение, Unity-Android, Flutter или React Native Android): упакуйте APK в архив (
-
Подождите — "Please upload your logs and allow us to analyze them up to 48 hours." В блоке появляется Integration is under review: и строка "The statuses will change once our Technical Engineer checks your integration". Инженер проверяет пять пунктов: Mediation is initialized, Consent Manager is shown (screenshot can be provided as well), Ad types integrated + shown, Networks integrated и AppsFlyer/Meta integrated.
-
Нажмите Complete UA Setup. Когда логи проходят проверку, мы пишем: «Логи корректны — опубликуйте приложение в сторе и загрузите креативы, затем напишите нам, и мы вместе запустим кампанию».
Если кнопка неактивна
| Что вы видите | Почему | Что делать |
|---|---|---|
| MMP Setup и Request UA неактивны | Поле Facebook App ID пустое или, для Android-приложения, Decryption Key содержит не ровно 64 символа. По отдельным приложениям мы эти кнопки не включаем | Заполните 1.2. Provide input; в ключе 64 символа |
| Upload или Send for Review неактивны | Причину называет подсказка: "Please complete Meta Integration section" · "Click Request UA button in Meta Integration section to get Ad Account ID" · "Please complete AppsFlyer setup section" · "Please complete Prepare the app for testing section" · "Please upload the required file in Prepare the app for testing section" · "Request for review has already been sent" · "Complete Monetization Setup step" | Сделайте то, что называет подсказка |
| Complete UA Setup неактивна | "Please start the analysis by clicking Send for Review button" · "Please wait until the analysis is complete" · "Complete MMP Setup" | Нажмите Send for Review, дождитесь окончания проверки или нажмите MMP Setup |
Строки FacebookAnalytics … initialized нет | Адаптера Meta Analytics нет в билде — Android: строка facebook_analytics; Unity: Meta Analytics в разделе Services, затем Generate. На пути с собственным Meta SDK её нет по замыслу | Добавьте адаптер, пересоберите билд, отправьте заново — или сообщите нам, что вы идёте по пути с собственным Meta SDK |
| Встроенный гайд Meta в блоке 1.1 говорит "follow this guide for AppsFlyer" | Это примечание для паблишеров, которые подключают собственный аккаунт AppsFlyer | Игнорируйте его; используйте MMP Setup и ли передачу приложения |
| В Testflight has been sent to … указан второй, личный адрес | Строка дашборда | Отправьте билд TestFlight на [email protected] и [email protected], затем выберите этот чекбокс |
Дальше вы загружаете минимум одно вертикальное видео и запускаете кампанию.
Далее: 4. Creatives
Помощь
Напишите на [email protected] и [email protected] или [email protected]. Укажите bundle ID, платформу (Android, iOS, Unity, Flutter или React Native), какой режим вы выбрали — Light SDK или Appodeal SDK — и что именно блокирует: блок визарда и скриншот либо точный текст ошибки или строки лога.