问题描述
我需要在我的Android应用程序中获取GCLID值。我发现的是Play Install Referrer Library,它向我返回了utm标签,但是我不确定GCLID值是否位于val referrer = response.installreferrer
代码示例:
fun getGCLID(){
referrerClient = installreferrerClient.newBuilder(this).build()
referrerClient.startConnection(object : installreferrerStateListener {
override fun oninstallreferrerSetupFinished(responseCode: Int) {
when (responseCode) {
installreferrerClient.installreferrerResponse.OK -> {
// Connection established.
val response: ReferrerDetails = referrerClient.installreferrer
val referrer = response.installreferrer
val clickTimestamp = response.referrerClickTimestampSeconds
val installTimestamp = response.installBeginTimestampSeconds
Log.d("TagGCLID","oninstallreferrerSetupFinished: 1")
if ("gclid" in referrer) {
Log.d("TagGCLID","GCLID is detected in referrer // is $referrer")
//report to Firebase Analytics
} else {
Log.d("TagGCLID","no GCLID is detected in referrer\n" +
"$referrer")
//do something else
}
}
installreferrerClient.installreferrerResponse.FEATURE_NOT_SUPPORTED -> {
Log.d("TagGCLID","installreferrerResponse: -1")
// API not available on the current Play Store app.
}
installreferrerClient.installreferrerResponse.SERVICE_UNAVAILABLE -> {
Log.d("TagGCLID","installreferrerResponse: -2")
// Connection Couldn't be established.
}
}
}
override fun oninstallreferrerServicedisconnected() {
Log.d("TagGCLID","oninstallreferrerServicedisconnected: -3")
// Try to restart the connection on the next request to
// Google Play by calling the startConnection() method.
}
})
}
我应该怎么做才能获取GCLID值?
解决方法
是的,我也有类似的问题,如果用户已从浏览器切换到游戏市场,则可以获取此gclid,但是如果在游戏市场本身中单击了广告,则不会传输gclid。您的方法编写正确,但是仅当用户通过浏览器时才有效。