App Tracking Transparency
Начиная с iOS 14.5, параметр IDFA будет недоступен без использования библиотеки App Tracking Transparency и показа app-tracking authorization запроса конечному пользователю. Если приложение не использует данный запрос, параметр IDFA будет недоступен, что может привести к снижению дохода от показа рекламы.
Для отображения запроса App Tracking Transparency и доступа к параметру IDFA, обновите ваш Info.plist
добавив ключ
NSUserTrackingUsageDescription
со значением. Пример:
<key>NSUserTrackingUsageDescription</key>
<string>This identifier will be used to deliver personalized ads to you.</string>
Так же добавьте AppTrackingTransparency.framework в ваш проект.
Appodeal Unity Plugin автоматически добавляет ключ NSUserTrackingUsageDescription
(если
соответствующий флаг установлен в Appodeal → Appodeal Settings)
и AppTrackingTransparency.framework.
1. Stack Consent Manager
Если вы используете библиотеку StackConsentManager в вашем проекте, то никаких дополнительных шагов не требуется.
Запрос будет показан для пользователей с версией iOS 14.5+ после вызова метода
-[STKConsentManager showConsentDialogFromRootViewController:delegate:]
.
Никаких дополнительных шагов не требуется. Интеграция Consent Manager остается такой же как в секции GDPR И CCPA.
Т.к. Consent Manager будет показывать ATT запрос только для пользователей с версией iOS 14.5+, вам необходимо будет
добавить дополнительную информацию в секцию App Review Information версии вашего приложения в App Store Connect.
Например: App Tracking Transparency request is only available for users under iOS 14.5 or higher. Данный шаг
необходим, потому что Apple могут отклонить билд приложения, который содержит AppTrackingTransparency.framework
,
но не показывает запрос ATT при при его старте.
2. Показ АТТ В Ручном Режиме
Отключить запрос ATT через Appodeal Unity Consent Manager:
- UPM Дистрибуция
- Manual Дистрибуция
_consentManager = ConsentManager.GetInstance();
_consentManager?.RequestConsentInfoUpdate(AppKey, this);
// Prevent consent manager to ask app tracking transparency permissions
_consentManager?.DisableAppTrackingTransparencyRequest();
consentManager = ConsentManager.getInstance();
consentManager?.requestConsentInfoUpdate(appKey, this);
// Prevent consent manager to ask app tracking transparency permissions
consentManager?.disableAppTrackingTransparencyRequest();
Скачайте Unity App Tracking Transparency Plugin
Импортируйте Unity App Tracking Transparency Plugin в ваш проект.
Наследуйте ваш класс от IAppodealAppTrackingTransparencyListener
:
SomeClassName : IAppodealAppTrackingTransparencyListener {}
Вызовите метод ниже для отображения запроса App Tracking Transparency. Вызовите этот метод при запуске приложения.
AppodealAppTrackingTransparency.RequestTrackingAuthorization(this);
Теперь вы можете использовать следующие методы обратного вызова в вашем public class
:
public void AppodealAppTrackingTransparencyListenerNotDetermined()
{
Debug.Log("AppodealAppTrackingTransparencyListenerNotDetermined");
}
public void AppodealAppTrackingTransparencyListenerRestricted()
{
Debug.Log("AppodealAppTrackingTransparencyListenerRestricted");
}
public void AppodealAppTrackingTransparencyListenerDenied()
{
Debug.Log("AppodealAppTrackingTransparencyListenerDenied");
}
public void AppodealAppTrackingTransparencyListenerAuthorized()
{
Debug.Log("AppodealAppTrackingTransparencyListenerAuthorized");
}