Catch up on highlights from Firebase at Google I/O 2023. Learn more

配置 Analytics 數據收集和使用

Google Analytics 提供的功能允許您控制 Analytics 數據的收集和使用。

禁用 Analytics 數據收集

在某些情況下,您可能希望暫時或永久禁用 Analytics 數據的收集,例如收集最終用戶的同意或履行法律義務。 Google Analytics 提供了多種選項來禁用和停用 Analytics 收集。它們一起使用,支持許多典型用例。

暫時禁用收集

如果您希望暫時禁用 Analytics 收集,例如在收集數據之前獲得最終用戶的同意,您可以在應用程序的Info.plist文件中將FIREBASE_ANALYTICS_COLLECTION_ENABLED的值設置為NO (布爾值)。例如,在源 XML 中查看:

<key>FIREBASE_ANALYTICS_COLLECTION_ENABLED</key>
<false/>

要重新啟用收集,例如在最終用戶同意後,請調用AnalyticssetAnalyticsCollectionEnabled實例方法。例如:

迅速

注意:此 Firebase 產品不適用於 macOS 目標。
Analytics.setAnalyticsCollectionEnabled(true)

目標-C

注意:此 Firebase 產品不適用於 macOS 目標。
[FIRAnalytics setAnalyticsCollectionEnabled:YES];

如果您因任何原因需要再次暫停收款,您可以致電

迅速

注意:此 Firebase 產品不適用於 macOS 目標。
Analytics.setAnalyticsCollectionEnabled(false)

目標-C

[FIRAnalytics setAnalyticsCollectionEnabled:NO];

並暫停收集,直到您重新啟用它。 setAnalyticsCollectionEnabled方法設置的值在應用程序執行過程中持續存在,並覆蓋應用程序的Info.plist文件中FIREBASE_ANALYTICS_COLLECTION_ENABLED的值。為setAnalyticsCollectionEnabled設置值後,Analytics 集合將保持該狀態,直到再次調用setAnalyticsCollectionEnabled ,即使用戶關閉並重新打開您的應用程序也是如此。

永久停用收集

如果您需要在應用程序的某個版本中永久停用 Analytics 收集,請在應用程序的Info.plist file中將FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED設置為YES (布爾值)。將FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED設置為YES (布爾值)優先於應用的Info.plistFIREBASE_ANALYTICS_COLLECTION_ENABLED的任何值以及使用setAnalyticsCollectionEnabled設置的任何值。

要重新啟用收集,請從您的Info.plist中刪除FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED 。將FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED設置為NO (布爾值)沒有任何效果,並導致與未在Info.plist文件中設置FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED相同的行為。

禁用 IDFA 收集

如果您通過 CocoaPods 通過將pod 'Firebase/Analytics'添加到應用程序的 Podfile 來安裝 Firebase,並希望在您的 Apple 應用程序中禁用 IDFA(設備的廣告標識符)收集,請確保您的應用程序中不包含 AdSupport 框架。

要在沒有任何 IDFA 收集功能的情況下安裝 Firebase,請使用以下子規范代替pod 'Firebase/Analytics'

pod 'Firebase/AnalyticsWithoutAdIdSupport'

在 Apple 文檔中了解有關 IDFA 的更多信息:

禁用 IDFV 收集

如果您希望在您的 Apple 應用程序中禁用 IDFV(供應商標識符)收集,請在您的應用程序的Info.plist文件中將GOOGLE_ANALYTICS_IDFV_COLLECTION_ENABLED的值設置為NO (布爾值)。

配置 Analytics 數據的使用

禁用個性化廣告功能

如果您已將 Google Analytics 項目鏈接到廣告帳戶或以其他方式啟用廣告集成,或選擇加入數據共享,則您的 Analytics 數據可能有資格用於個性化廣告。這意味著,例如,您可以使用收集的事件(例如first_open來創建和部署受眾群體列表以進行再營銷,除非您表明此類數據不可用於個性化廣告。

要以編程方式控制用戶的 Analytics 數據是否應用於個性化廣告,請在應用的 AndroidManifest.xml 文件中設置適當的默認行為,然後使用下述方法覆蓋該默認行為。

要設置默認的個性化廣告行為,請在應用程序的Info.plist文件中將GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS的值設置為NO (布爾值)。

您還可以通過 Google Analytics屬性設置中的廣告個性化設置來控制從最終用戶收集的數據是否可用於廣告個性化。

重新啟用個性化廣告功能

要在運行時為用戶重新啟用個性化廣告功能,例如在最終用戶同意後,請使用setUserProperty方法,如下所示:

迅速

注意:此 Firebase 產品不適用於 macOS 目標。
Analytics.setUserProperty("true", forName: AnalyticsUserPropertyAllowAdPersonalizationSignals)

目標-C

注意:此 Firebase 產品不適用於 macOS 目標。
[FIRAnalytics setUserPropertyString:@"YES" forName:kFIRUserPropertyAllowAdPersonalizationSignals];

如果您選擇暫時禁用分析收集(例如,直到最終用戶同意),並且您希望在為用戶重新啟用分析收集時控制個性化廣告功能,請確保您在調用之前指定此設置調用以重新啟用分析收集。例如:

迅速

注意:此 Firebase 產品不適用於 macOS 目標。
Analytics.setUserProperty(..., forName: AnalyticsUserPropertyAllowAdPersonalizationSignals)
Analytics.setAnalyticsCollectionEnabled(true)

目標-C

注意:此 Firebase 產品不適用於 macOS 目標。
[FIRAnalytics setUserPropertyString:... forName:kFIRUserPropertyAllowAdPersonalizationSignals];
[FIRAnalytics setAnalyticsCollectionEnabled:YES];

確認您的設置

當通過上述機制之一為用戶禁用廣告個性化信號時,從該用戶設備記錄的後續事件包將包含名為“non_personalized_ads”的用戶屬性,其值為 1 以指示該包中的事件不可用用於個性化廣告。禁用個性化廣告不會影響數據用於衡量目的,包括報告和歸因。

查看您的配置更改

一旦您更改了 Google Analytics 設置,SDK 就會下載更改。該過程快速且無縫,因此您可以快速測試您的更改。當您在 Analytics 中進行更改時,可能需要幾分鐘才能在您的應用程序中進行部署。如果您的應用程序已上線,則完整的部署過程最多可能需要一小時才能完成。