為應用程式設定同意聲明模式

本頁面適用於在應用程式中使用 Google Analytics for Firebase SDK,且想整合同意聲明模式的開發人員。如要瞭解同意聲明模式,請參閱「同意聲明模式總覽」。

Google Analytics 提供同意聲明模式,可根據使用者的同意聲明狀態調整 SDK 行為。您可以以基本或進階方式導入同意聲明模式。如果不確定應導入基本或進階同意聲明模式,可進一步瞭解基本和進階同意聲明模式,並參考貴公司的規範。

事前準備

您必須先實作以下項目,才能管理使用者同意聲明:

  • Google Analytics for Firebase SDK
  • 用於收集使用者同意聲明的同意聲明設定橫幅

如要設定同意聲明模式,您必須:

  1. 設定預設的同意聲明狀態

系統不會預設任何同意聲明模式值。如要為應用程式設定預設同意聲明狀態,請按照下列步驟操作:

  1. 開啟應用程式的 info.plist 檔案。
  2. 新增同意聲明模式鍵/值組合。鍵會說明同意聲明類型,而值則代表同意聲明狀態。值可以是 true,表示已授予同意聲明,或是 false,表示同意聲明遭到拒絕。

    根據《歐洲經濟區 (EEA) 流量同意聲明模式》更新,ad_user_dataad_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 (Swift | Obj-C) 還原廣告個人化功能的先前值。

以下範例顯示 setConsent 方法將不同的同意值更新為 granted

Swift

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

Objective-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. 更新同意聲明呼叫,加入廣告使用者資料和廣告個人化功能的參數:

    Swift

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

    Objective-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.