我们有一个 React Native 应用程序,我们希望在其中跟踪用户行为(访问的屏幕、某些事件)。我们不会将数据用于任何广告/应用程序不包含任何广告等。这纯粹是为了匿名跟踪用户行为。 我们已经设定:
<meta-data android:name="google_analytics_adid_collection_enabled" android:value="false" tools:replace="android:value" />
我最初将所有 4 个标志(如下)设置为 false,但看起来根本没有任何事件进入 Google Analytics 仪表板(调试视图)。当我将analytics_storage设置为true时,一切都很好,我可以在仪表板的调试视图中看到事件。
await firebase.analytics().setAnalyticsCollectionEnabled(true);
await firebase.analytics().setConsent({
analytics_storage: true,
ad_storage: false,
ad_user_data: false,
ad_personalization: false,
});
Google对此标志的解释是:
analytics_storage:启用与分析相关的存储(例如cookie),例如访问时长。
我认为它会提供/控制发送一些附加信息,而不是发送事件的基本功能。 我是否使用了错误的内容,或者是否需要将此标志设置为 true 才能将任何事件记录到仪表板?
我们正在使用:
“@react-native-firebase/analytics”:“^19.2.2”, “@react-native-firebase/app”:“^19.2.2”,
我尝试将该标志设置为 false,但随后它停止将任何内容记录到 Google Analytics 仪表板中的调试视图。
false
标记数据进行报告。基本上,当 GA4 端点收到 false
时,数据将由内部机器学习模型进行处理并进行计算。false
标志,debugView 不会显示未经同意的流量(这是标志设置为 false
时的状态)。另一方面,同意的流量是由已授予您同意设置的用户生成的流量(当标志设置为 true
时)false
标志的实现,您应该在 Google Analytics 4 设置中启用 BigQuery 导出。然后,您可以像这样在 Google Cloud Platform 项目中运行 SQL 查询,并查找您的移动应用程序是否正在发送未经同意的点击。SELECT
TIMESTAMP_MICROS(event_timestamp) AS event_datetime,
COALESCE(device.operating_system || " - ", "") || COALESCE(device.operating_system_version, "") AS OS,
COALESCE(app_info.id || " - ", "") || COALESCE(app_info.version, "") AS APP_INFO,
COALESCE(device.mobile_brand_name || " - ", "") || COALESCE(device.mobile_model_name, "") AS DEVICE_INFO,
COALESCE(geo.region || " - ", "") || COALESCE(geo.city, "") AS GEO_INFO,
user_pseudo_id -- if privacy_info.analytics_storage to false then this column is null, if true then value is reported,
event_name,
privacy_info
FROM
`<replace with your GCP project id>.<replace with your dataset name>.events_intraday_*`
WHERE true
AND _TABLE_SUFFIX = FORMAT_DATE("%Y%m%d", CURRENT_DATE()) -- today
ORDER BY
event_datetime DESC
SQL查询注释
FROM
部分中的值。