禁用Firebase云消息传递的Analytics服务

时间:2016-09-05 09:03:55

标签: android firebase firebase-cloud-messaging firebase-analytics

我们毫无问题地从GCM反映到FCM。通知服务运行良好。但是,出于法律原因,我们必须停用Firebase Analytics服务的应用衡量部分。

我们使用本指南禁用分析部分 https://firebase.google.com/support/guides/disable-analytics

所以我们把这个标志放到清单文件中:

<meta-data android:name="firebase_analytics_collection_enabled" android:value=false />

我们还以编程方式禁用了该集合:

FirebaseAnalytics.getInstance(this).setAnalyticsCollectionEnabled(false);

很遗憾,我们仍在收集数据,我们可以在Firebase Analytics控制台中查看新事件。是否有可能完全关闭分析服务?

感谢您的帮助。

编辑:我还在应用程序标记中包含了停用元数据:

<meta-data android:name="firebase_analytics_collection_deactivated" android:value=true />

5 个答案:

答案 0 :(得分:5)

截至2017年10月,停用的值必须为“true”。 “假”将不再起作用。

<meta-data
        android:name="firebase_analytics_collection_deactivated"
        android:value="true" />

日志正确显示它正在运行。

10-11 16:29:32.755 27857-27857/? I/FA: Collection disabled with firebase_analytics_collection_deactivated=1

答案 1 :(得分:3)

这是Firebase错误或documentation for disabling Analytics collection中的错误。要将收藏集firebase_analytics_collection_deactivated永久禁用为 false (不是true):

    <meta-data
        android:name="firebase_analytics_collection_deactivated"
        android:value="false" />

您可以通过启用Google Analytics记录来确认已停用该集合:

adb shell setprop log.tag.FA VERBOSE
adb shell setprop log.tag.FA-SVC VERBOSE
adb logcat -v time -s FA FA-SVC

观察输出如下:

I/FA: Collection disabled with firebase_analytics_collection_deactivated=1
D/FA: Event not sent since app measurement is disabled

答案 2 :(得分:1)

我尝试将该行放在我的清单中,位于应用程序标记内,作为应用程序标记下的第一行

 <application
    android:icon="@mipmap/ic_launcher"
    android:name="your.package.name">
    <meta-data android:name="firebase_analytics_collection_enabled" android:value="false" />

执行此操作时,在初始化过程中,Firebase会显示在日志中:

I / FA:使用firebase_analytics_collection_enabled = 0

禁用了集合

之后似乎没有向firebase报告任何内容。

答案 3 :(得分:1)

刚收到Firebase支持团队的反馈意见。

  

如果您不添加双重文件,清单文件的代码将无法编译   在android:value属性中引用,如果你已经添加了,那就好了   这一点。

     

暂时禁用分析集合应该可行   请尝试启用详细调试选项并检查日志吗?

     

另一方面,我们知道禁用存在问题   永久性的分析集合,已经存在错误   这个并由我们的工程师适当优先考虑。请保持   更新了我们的发布说明,以便进一步通知   问题。

     

对于由此给您带来的任何不便,我们深表歉意   我们感谢您的理解,因为我们会继续改进我们的   服务,向前发展。

答案 4 :(得分:0)

为了从Firebase消息中完全禁用Analytics,您需要在gradle中排除Analytics软件包:

implementation('com.google.firebase:firebase-messaging:18.0.0') {
    exclude group: 'com.google.firebase', module: 'firebase-core'
    exclude group: 'com.google.firebase', module: 'firebase-analytics'
    exclude group: 'com.google.firebase', module: 'firebase-measurement-connector'
}

并在AndroidManifest文件中停用跟踪:

<meta-data android:name="firebase_analytics_collection_deactivated" android:value="true" />
    <meta-data android:name="google_analytics_adid_collection_enabled" android:value="false" />
    <meta-data android:name="firebase_messaging_auto_init_enabled" android:value="false" />

如果您使用的是proguard,则还必须将此行添加到配置文件中

-dontwarn com.google.firebase.analytics.connector.AnalyticsConnector

我希望这对希望在其应用中不包含任何形式的跟踪但仍使用Firebase Cloud Messaging的其他所有人有所帮助。