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

Эта страница предназначена для разработчиков, которые используют SDK Google Analytics для Firebase в своих приложениях и хотят интегрировать режим согласия. Общие сведения о режиме согласия см. в разделе Обзор режима согласия .

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

Прежде чем начать

Прежде чем вы сможете управлять согласием пользователей, вам необходимо реализовать:

  • Google Analytics для Firebase SDK
  • Баннер настроек согласия для получения согласия пользователя

Чтобы настроить режим согласия, вам необходимо:

  1. Установите состояние согласия по умолчанию .

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

  1. Откройте файл info.plist вашего приложения.
  2. Добавьте пары «ключ-значение» режима согласия. Ключ описывает тип согласия , а значение указывает состояние согласия. Значения могут быть либо true , что означает, что согласие было предоставлено, либо false , что означает, что согласие было отклонено.

    В соответствии с обновлениями режима согласия для трафика в Европейской экономической зоне (ЕЭЗ) для ad_user_data и ad_personalization можно установить значение eu_consent_policy , что означает, что в согласии отказано только пользователям в регионах, на которые распространяется Политика согласия пользователей ЕС.

    Установите следующее:

    • GOOGLE_ANALYTICS_DEFAULT_ALLOW_ANALYTICS_STORAGE
    • GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_STORAGE
    • GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_USER_DATA
    • GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS
  3. Сохраните изменения. Затем реализуйте механизм обновления значений согласия.

Например, чтобы установить все разрешения на предоставление разрешений для всех параметров по умолчанию:

<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_ANALYTICS_STORAGE</key> <true/>
<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_STORAGE</key> <true/>
<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_USER_DATA</key> <true/>
<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS</key> <true/>

Чтобы обновить значения согласия после запуска приложения, вызовите метод setConsent .

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

Если пользователь отзывает ранее данное согласие на использование Analytics или хранение рекламы, Google Analytics удаляет все свойства пользователя, включая согласие на ad_personalization . Чтобы сохранить выбор согласия пользователя на персонализацию рекламы, восстановите предыдущее значение для персонализации рекламы с помощью setConsent( Свифт | Объект-C ).

В следующем примере показано, как метод setConsent обновляет различные значения согласия на granted :

Быстрый

Analytics.setConsent([
  .analyticsStorage: .granted,
  .adStorage: .granted,
  .adUserData: .granted,
  .adPersonalization: .granted,
])

Цель-C

[FIRAnalytics setConsent:@{
  FIRConsentTypeAnalyticsStorage : FIRConsentStatusGranted,
  FIRConsentTypeAdStorage : FIRConsentStatusGranted,
  FIRConsentTypeAdUserData : FIRConsentStatusGranted,
  FIRConsentTypeAdPersonalization : FIRConsentStatusGranted,
}];

Если пользователь решит отозвать свое согласие, обязательно обновите состояния согласия соответствующим образом.

В рамках постоянного стремления Google создать экосистему цифровой рекламы, безопасную для конфиденциальности, мы усиливаем соблюдение нашей политики согласия пользователей из ЕС .

Узнайте больше об обновлениях Google для режима согласия для трафика в Европейской экономической зоне (ЕЭЗ) .

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

  1. Обновите info.plist вашего приложения, включив в него:

    <key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_USER_DATA</key> <true/>
    <key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS</key> <true/>
    
  2. Обновите запросы на получение согласия, включив в них параметры для данных пользователя рекламы и персонализации рекламы:

    Быстрый

    Analytics.setConsent([
    .analyticsStorage: .granted,
    .adStorage: .granted,
    .adUserData: .granted,
    .adPersonalization: .granted,
    ])
    

    Цель-C

    [FIRAnalytics setConsent:@{
      FIRConsentTypeAnalyticsStorage : FIRConsentStatusGranted,
      FIRConsentTypeAdStorage : FIRConsentStatusGranted,
      FIRConsentTypeAdUserData : FIRConsentStatusGranted,
      FIRConsentTypeAdPersonalization : FIRConsentStatusGranted,
    }];
    

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

Выполните следующие действия:

  1. Включите подробный журнал на своем устройстве.
  2. В консоли отладки Xcode найдите:

    • ad_storage
    • analytics_storage
    • ad_user_data
    • ad_personalization

    Например, если хранилище рекламы включено, вы увидите следующее сообщение:

    ad_storage is granted.