android - 如何在 Android kotlin 中使用 Google Analytics

标签 android firebase kotlin google-analytics

在我的应用程序中,我想使用 Google 分析 向用户显示日志!
我写了下面的代码,但在运行应用程序后,它不显示google analytics dashboard 上的任何事件!
我有 application class 并将 google analytics 代码初始化到此类中,并在 fragments 中使用此类 Activity !
调试设置redPoint后,显示空的TrackerAnalytics!
我的应用类:

class App : Application() {
    private var analytics: GoogleAnalytics? = null

    override fun onCreate() {
        super.onCreate()
        //Google Analytics
        analytics = GoogleAnalytics.getInstance(this)
        //Fabric initialize kits
        val fabric = Fabric.Builder(this)
            .kits(Crashlytics())
            .debuggable(true)
            .build()
        Fabric.with(fabric)
    }

    override fun attachBaseContext(base: Context) {
        super.attachBaseContext(base)
        MultiDex.install(this)
    }

    @Synchronized
    fun getDefaultTracker(): Tracker? {
        var tracker: Tracker? = null
        analytics = GoogleAnalytics.getInstance(context) // here pass your activity instance
        analytics?.let {
            tracker = it.newTracker(R.xml.global_tracker)
        }
        return tracker
    }

    fun googleTracker(category: String, action: String, label: String) {
        val tracker: Tracker? = getDefaultTracker()
        tracker?.send(
            HitBuilders.EventBuilder()
                .setCategory(category)
                .setAction(action)
                .setLabel(label)
                .build()
        )
    }
}

fragment 代码:

App().googleTracker(ANALYTICS_SIGNUP_CATEGORY, ANALYTICS_SIGNUP_SIGNIN_ACTION, "")

调试图像:
enter image description here

enter image description here

最佳答案

你应该在这个函数中初始化谷歌分析:

 @Synchronized
fun getDefaultTracker(): Tracker? {
    var tracker: Tracker? = null
    analytics = GoogleAnalytics.getInstance(context) // here pass your activity instance
    analytics?.let {
        tracker = it.newTracker(R.xml.global_tracker)
    }
    return tracker
}

关于android - 如何在 Android kotlin 中使用 Google Analytics,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55720609/

相关文章:

javascript - 在发送到后端时显示数据

javascript - 我可以在本地同时模拟云功能和托管吗?

kotlin - 如何获得像 BaseResponse<Iterable<User>> 这样的通用类的 KClass

firebase - 错误: Could not build Objective-C module 'Firebase'

android - Lateinit 属性适配器尚未初始化设置 RecyclerView 和 Fragment

kotlin - Gradle的初学者问题

java - 如何添加向右滑动打开抽屉导航

java - 调用 Write() 时蓝牙套接字 OutputStream NullPointerException

javascript - 如何在 react-native 中使用和更新全局变量?

Android:ScrollView 的总高度