committed by
GitHub Enterprise
parent
68361916db
commit
ade5b59a56
@@ -105,6 +105,9 @@ dependencies {
|
||||
implementation 'com.appsflyer:af-android-sdk:5.1.0'
|
||||
implementation 'com.android.installreferrer:installreferrer:1.0'
|
||||
|
||||
// Add the Firebase SDK for Google Analytics
|
||||
implementation 'com.google.firebase:firebase-analytics:17.2.2'
|
||||
|
||||
// AndroidJUnitRunner and JUnit Rules
|
||||
androidTestImplementation 'com.android.support.test:runner:1.0.2'
|
||||
androidTestImplementation 'com.android.support.test:rules:1.0.2'
|
||||
|
||||
58
app/src/main/java/com/navi/analytics/FcmAnalyticsUtil.kt
Normal file
58
app/src/main/java/com/navi/analytics/FcmAnalyticsUtil.kt
Normal file
@@ -0,0 +1,58 @@
|
||||
/*
|
||||
* *
|
||||
* * Copyright (c) 2020 . All rights reserved @Navi
|
||||
*
|
||||
*/
|
||||
|
||||
package com.navi.analytics
|
||||
|
||||
import android.app.Application
|
||||
import android.os.Bundle
|
||||
import com.google.firebase.analytics.FirebaseAnalytics
|
||||
import com.navi.analytics.FcmAnalyticsUtil.Holder.INSTANCE
|
||||
import com.navi.app.NaviApplication
|
||||
|
||||
class FcmAnalyticsUtil {
|
||||
|
||||
private var firebaseAnalytics: FirebaseAnalytics? = null
|
||||
|
||||
private object Holder {
|
||||
val INSTANCE = FcmAnalyticsUtil()
|
||||
}
|
||||
|
||||
fun init(appContext: Application) {
|
||||
firebaseAnalytics =
|
||||
FirebaseAnalytics.getInstance(appContext)
|
||||
}
|
||||
|
||||
val firebaseAnalyticsInstance: FirebaseAnalytics
|
||||
get() {
|
||||
try {
|
||||
if (firebaseAnalytics == null) {
|
||||
firebaseAnalytics =
|
||||
FirebaseAnalytics.getInstance(NaviApplication.instance.applicationContext)
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
}
|
||||
|
||||
return firebaseAnalytics!!
|
||||
}
|
||||
|
||||
fun trackEvent(eventName: String, eventValues: Map<String, String>?) {
|
||||
var params: Bundle? = null
|
||||
eventValues?.let {
|
||||
params = Bundle()
|
||||
for ((key, value) in eventValues) {
|
||||
params?.putString(key, value)
|
||||
}
|
||||
}
|
||||
firebaseAnalytics?.logEvent(eventName, params)
|
||||
}
|
||||
|
||||
fun setUserId() {
|
||||
}
|
||||
|
||||
companion object {
|
||||
val analytics: FcmAnalyticsUtil by lazy { INSTANCE }
|
||||
}
|
||||
}
|
||||
@@ -12,5 +12,8 @@ object NaviTrackEvent {
|
||||
|
||||
fun appInit(appContext: NaviApplication) {
|
||||
AppsFlyerUtil.init(appContext)
|
||||
FcmAnalyticsUtil.analytics.init(appContext)
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -13,6 +13,7 @@ import androidx.annotation.LayoutRes
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import androidx.appcompat.widget.Toolbar
|
||||
import com.navi.R
|
||||
import com.navi.analytics.FcmAnalyticsUtil
|
||||
import com.navi.common.listeners.ApiCallListener
|
||||
import com.navi.loader.NaviLoader
|
||||
|
||||
@@ -64,6 +65,11 @@ abstract class BaseActivity : AppCompatActivity(), Toolbar.OnMenuItemClickListen
|
||||
|
||||
override fun onStart() {
|
||||
super.onStart()
|
||||
FcmAnalyticsUtil.analytics.firebaseAnalyticsInstance.setCurrentScreen(
|
||||
this,
|
||||
screenName,
|
||||
null
|
||||
)
|
||||
}
|
||||
|
||||
override fun onStop() {
|
||||
|
||||
Reference in New Issue
Block a user