parent
f790264e44
commit
415383393a
|
@ -4,9 +4,13 @@ import android.app.Application
|
||||||
import android.content.pm.ApplicationInfo
|
import android.content.pm.ApplicationInfo
|
||||||
import android.content.pm.PackageManager
|
import android.content.pm.PackageManager
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
|
import android.os.Bundle
|
||||||
import androidx.appcompat.app.AppCompatDelegate
|
import androidx.appcompat.app.AppCompatDelegate
|
||||||
import com.appsflyer.AppsFlyerLib
|
import com.appsflyer.AppsFlyerLib
|
||||||
|
import com.appsflyer.deeplink.DeepLinkResult
|
||||||
import com.facebook.FacebookSdk
|
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.AndroidLogAdapter
|
||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import kr.co.vividnext.sodalive.BuildConfig
|
import kr.co.vividnext.sodalive.BuildConfig
|
||||||
|
@ -61,5 +65,54 @@ class SodaLiveApp : Application() {
|
||||||
// Appsflyer SDK 초기화
|
// Appsflyer SDK 초기화
|
||||||
AppsFlyerLib.getInstance().init("tWF2wbJ5nSkya5Ru9mGcPU", null, this)
|
AppsFlyerLib.getInstance().init("tWF2wbJ5nSkya5Ru9mGcPU", null, this)
|
||||||
AppsFlyerLib.getInstance().start(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.Handler
|
||||||
import android.os.Looper
|
import android.os.Looper
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
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
|
import kr.co.vividnext.sodalive.splash.SplashActivity
|
||||||
|
|
||||||
class DeepLinkActivity : AppCompatActivity() {
|
class DeepLinkActivity : AppCompatActivity() {
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
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(
|
startActivity(
|
||||||
Intent(applicationContext, SplashActivity::class.java).apply {
|
Intent(applicationContext, SplashActivity::class.java).apply {
|
||||||
data = intent.data
|
data = intent.data
|
||||||
|
@ -65,15 +21,4 @@ class DeepLinkActivity : AppCompatActivity() {
|
||||||
finish()
|
finish()
|
||||||
}, 1000)
|
}, 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