Google Analytics для Android показывает отслеживание экрана под двумя метками

Я отслеживаю экраны активности приложений под Android под собственной меткой. Тем не менее, на панели инструментов GA, действия показаны с их путем по умолчанию вместе с пользовательскими метками. Кроме того, номера метрик, которые отслеживаются под двумя метками одного и того же действия, отличаются. Прикрепленный снимок экрана для лучшей иллюстрации: введите описание изображения здесь Здесь MainActivity а также Home screen ссылаются на ту же деятельность. Но GA показывает две отдельные метки. Как я могу избавиться от одного MainActivity этикетка?

2 ответа

Решение

Возможно, вы включили автоматическое отслеживание экрана. Выключите его, и он должен исчезнуть.

Смотрите здесь для описания свойства, если вы используете XML или здесь, если вы инициализируете его программно.

Вы можете отключить автоматическое отслеживание экрана с помощью enableAutoActivityTracking(false) в коде:

https://developers.google.com/android/reference/com/google/android/gms/analytics/Tracker#enableAutoActivityTracking(boolean)

Или через файл XML:

      <bool name="ga_autoActivityTracking">false</bool>

https://developers.google.com/analytics/devguides/collection/android/v4/screens#automatic

Отслеживание вещей вручную можно выполнить с помощью этих:

      fun trackScreen(context: Context, screenObject: Any, screenName: String? = null) {
        if (screenName == null)
            trackScreen(context, screenObject.javaClass)
        else
            trackScreen(context, screenObject.javaClass, screenName)
    }

fun trackScreen(context: Context, clazz: Class<Any>, screenName: String = clazz.simpleName) {
        if (BuildConfig.DEBUG)
            return
        val className = clazz.canonicalName ?: clazz.name
        FirebaseAnalytics.getInstance(context).logEvent(FirebaseAnalytics.Event.SCREEN_VIEW) {
            param(FirebaseAnalytics.Param.SCREEN_NAME, screenName)
            param(FirebaseAnalytics.Param.SCREEN_CLASS, className)
        }
    }

Итак, вы можете использовать registerActivityLifecycleCallbacks и используйте указанную выше функцию, например:

https://developer.android.com/reference/android/app/Application#registerActivityLifecycleCallbacks(android.app.Application.ActivityLifecycleCallbacks)

Другие вопросы по тегам