gpt4 book ai didi

android - 在 Firebase 中禁用自动 Activity 跟踪

转载 作者:IT老高 更新时间:2023-10-28 23:36:20 27 4
gpt4 key购买 nike

我想知道,有没有办法禁用分析自动 Activity 跟踪?我有基于 fragment 的 View 层次结构,很少有这种情况:

  1. 始终有一个 fragment 的 Activity 。
  2. 可以有不同的 fragment 作为根的 Activity 。
  3. 带有根 fragment 的 Activity ,其中包含带有其他 fragment 的 ViewPager。

我在 Firebase 文档的 fragment 中使用这样的代码来跟踪自定义屏幕:

mFirebaseAnalytics.setCurrentScreen(getActivity(), "some_fragment_1", null);

在第一种情况下,我只想跟踪根 fragment 。在第二种情况下,我只想跟踪成为根的每个 fragment 。在第三种情况下,我只想跟踪在 ViewPager 中可见的每个 fragment 。

而且,问题是,我根本不想跟踪 Activity ,但不幸的是,Firebase 自己做 - 因此,我的统计数据看起来很奇怪,例如:

SomeActivity 50%

some_fragment_1 30%

some_fragment_2 20%

我不需要此统计信息中的 Activity ,因为 fragment 统计信息已包含它。

那么,有什么方法可以禁用 Activity 跟踪?

最佳答案

现在可以使用新的 API 手动跟踪屏幕。

可以禁用自动跟踪

在 iOS 上,在 info.plist 中将 FirebaseAutomaticScreenReportingEnabled 设置为 NO。在 Android 上,在 list 中将 google_analytics_automatic_screen_reporting_enabled 设置为 false。

手动跟踪

iOS

override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)

// After enough time has passed to make this screen view significant.
Analytics.logEvent(AnalyticsEventScreenView, parameters: [
AnalyticsParameterScreenName: screenName!,
AnalyticsParameterScreenClass: screenClass!,
MyAppAnalyticsParameterFitnessCategory: category!
])
}

安卓

@Override
public void onResume() {
super.onResume();

// After enough time has passed to make this screen view significant.
Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.SCREEN_NAME, screenName);
bundle.putString(FirebaseAnalytics.Param.SCREEN_CLASS, screenClass);
bundle.putString(MyAppAnalyticsConstants.Param.TOPIC, topic);
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SCREEN_VIEW, bundle);
}

https://firebase.googleblog.com/2020/08/google-analytics-manual-screen-view.html

关于android - 在 Firebase 中禁用自动 Activity 跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51936945/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com