parent
f790264e44
commit
415383393a
|
@ -4,9 +4,13 @@ import android.app.Application
|
|||
import android.content.pm.ApplicationInfo
|
||||
import android.content.pm.PackageManager
|
||||
import android.os.Build
|
||||
import android.os.Bundle
|
||||
import androidx.appcompat.app.AppCompatDelegate
|
||||
import com.appsflyer.AppsFlyerLib
|
||||
import com.appsflyer.deeplink.DeepLinkResult
|
||||
import com.facebook.FacebookSdk
|
||||
import com.google.firebase.analytics.ktx.analytics
|
||||
import com.google.firebase.ktx.Firebase
|
||||
import com.orhanobut.logger.AndroidLogAdapter
|
||||
import com.orhanobut.logger.Logger
|
||||
import kr.co.vividnext.sodalive.BuildConfig
|
||||
|
@ -61,5 +65,54 @@ class SodaLiveApp : Application() {
|
|||
// Appsflyer SDK 초기화
|
||||
AppsFlyerLib.getInstance().init("tWF2wbJ5nSkya5Ru9mGcPU", null, this)
|
||||
AppsFlyerLib.getInstance().start(this)
|
||||
|
||||
// 딥링크 및 디퍼드 딥링크 처리
|
||||
AppsFlyerLib.getInstance().subscribeForDeepLink { deepLinkResult ->
|
||||
when (deepLinkResult.status) {
|
||||
DeepLinkResult.Status.FOUND -> {
|
||||
val deepLink = deepLinkResult.deepLink
|
||||
SharedPreferenceManager.marketingLinkValue = deepLink?.getStringValue(
|
||||
"deep_link_value"
|
||||
) ?: ""
|
||||
|
||||
val marketingPid = deepLink?.getStringValue(
|
||||
"deep_link_sub1"
|
||||
)
|
||||
|
||||
if (marketingPid != null) {
|
||||
SharedPreferenceManager.marketingPid = marketingPid
|
||||
}
|
||||
|
||||
SharedPreferenceManager.marketingUtmSource = deepLink?.getStringValue(
|
||||
"deep_link_sub2"
|
||||
) ?: ""
|
||||
SharedPreferenceManager.marketingUtmMedium = deepLink?.getStringValue(
|
||||
"deep_link_sub3"
|
||||
) ?: ""
|
||||
SharedPreferenceManager.marketingUtmCampaign = deepLink?.getStringValue(
|
||||
"deep_link_sub4"
|
||||
) ?: ""
|
||||
SharedPreferenceManager.marketingLinkValueId = deepLink?.getStringValue(
|
||||
"deep_link_sub5"
|
||||
)?.toLongOrNull() ?: 0L
|
||||
|
||||
logUtmInFirebase()
|
||||
}
|
||||
|
||||
DeepLinkResult.Status.NOT_FOUND -> Logger.d("딥링크를 찾을 수 없습니다.")
|
||||
DeepLinkResult.Status.ERROR -> Logger.d("딥링크 처리 중 오류 발생: ${deepLinkResult.error}")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun logUtmInFirebase() {
|
||||
val firebaseAnalytics = Firebase.analytics
|
||||
val params = Bundle().apply {
|
||||
putString("utm_source", SharedPreferenceManager.marketingUtmSource)
|
||||
putString("utm_medium", SharedPreferenceManager.marketingUtmMedium)
|
||||
putString("utm_campaign", SharedPreferenceManager.marketingUtmCampaign)
|
||||
}
|
||||
|
||||
firebaseAnalytics.logEvent("campaign_utm", params)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,56 +5,12 @@ import android.os.Bundle
|
|||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import com.appsflyer.AppsFlyerLib
|
||||
import com.appsflyer.deeplink.DeepLinkResult
|
||||
import com.google.firebase.analytics.ktx.analytics
|
||||
import com.google.firebase.ktx.Firebase
|
||||
import com.orhanobut.logger.Logger
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
import kr.co.vividnext.sodalive.splash.SplashActivity
|
||||
|
||||
class DeepLinkActivity : AppCompatActivity() {
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
|
||||
// 딥링크 및 디퍼드 딥링크 처리
|
||||
AppsFlyerLib.getInstance().subscribeForDeepLink { deepLinkResult ->
|
||||
when (deepLinkResult.status) {
|
||||
DeepLinkResult.Status.FOUND -> {
|
||||
val deepLink = deepLinkResult.deepLink
|
||||
SharedPreferenceManager.marketingLinkValue = deepLink?.getStringValue(
|
||||
"deep_link_value"
|
||||
) ?: ""
|
||||
|
||||
val marketingPid = deepLink?.getStringValue(
|
||||
"deep_link_sub1"
|
||||
)
|
||||
|
||||
if (marketingPid != null) {
|
||||
SharedPreferenceManager.marketingPid = marketingPid
|
||||
}
|
||||
|
||||
SharedPreferenceManager.marketingUtmSource = deepLink?.getStringValue(
|
||||
"deep_link_sub2"
|
||||
) ?: ""
|
||||
SharedPreferenceManager.marketingUtmMedium = deepLink?.getStringValue(
|
||||
"deep_link_sub3"
|
||||
) ?: ""
|
||||
SharedPreferenceManager.marketingUtmCampaign = deepLink?.getStringValue(
|
||||
"deep_link_sub4"
|
||||
) ?: ""
|
||||
SharedPreferenceManager.marketingLinkValueId = deepLink?.getStringValue(
|
||||
"deep_link_sub5"
|
||||
)?.toLongOrNull() ?: 0L
|
||||
|
||||
logUtmInFirebase()
|
||||
}
|
||||
|
||||
DeepLinkResult.Status.NOT_FOUND -> Logger.d("딥링크를 찾을 수 없습니다.")
|
||||
DeepLinkResult.Status.ERROR -> Logger.d("딥링크 처리 중 오류 발생: ${deepLinkResult.error}")
|
||||
}
|
||||
}
|
||||
|
||||
startActivity(
|
||||
Intent(applicationContext, SplashActivity::class.java).apply {
|
||||
data = intent.data
|
||||
|
@ -65,15 +21,4 @@ class DeepLinkActivity : AppCompatActivity() {
|
|||
finish()
|
||||
}, 1000)
|
||||
}
|
||||
|
||||
private fun logUtmInFirebase() {
|
||||
val firebaseAnalytics = Firebase.analytics
|
||||
val params = Bundle().apply {
|
||||
putString("utm_source", SharedPreferenceManager.marketingUtmSource)
|
||||
putString("utm_medium", SharedPreferenceManager.marketingUtmMedium)
|
||||
putString("utm_campaign", SharedPreferenceManager.marketingUtmCampaign)
|
||||
}
|
||||
|
||||
firebaseAnalytics.logEvent("campaign_utm", params)
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue