GooglePlay下载来源
用户通过推广链接下载App的时候,国内应用商店是无法获取推广来源的,通过而GooglePlay可以,通过网址构建工具生成前往GooglePlay的下载链接,应用就可以获取到推广来源信息,数据可以自由在构建工具设置。
部分参数如下
- utm_source :来源, 一般设置为推广平台
- utm_medium:媒介,一般设置为推广平台的不容产品,如某推广平台的Banner广告、开屏广告,或者区分推广付费方式。
- utm_term:关键词
如何使用
详细接入方式见:官方文档
添加依赖
1
2
|
// 1.1版本有bug,使用直接导致闪退
implementation 'com.android.installreferrer:installreferrer:1.0'
|
使用
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
private lateinit var referrerClient: InstallReferrerClient
private fun initReferrer() {
referrerClient = InstallReferrerClient.newBuilder(this).build()
if (getOldSource().isNotEmpty()) return// 存在旧的source就不获取
val installListener = object : InstallReferrerStateListener {
// 连接成功回调
override fun onInstallReferrerSetupFinished(responseCode: Int) {
if (responseCode == InstallReferrerClient.InstallReferrerResponse.OK) {
val response: ReferrerDetails = referrerClient.installReferrer
val url = response.installReferrer // 获取的url就是之前网址构建工具的地址,包含具体参数
referrerClient.endConnection() // 这里一定要记得关闭连接,否则会出现错误
}
}
override fun onInstallReferrerServiceDisconnected() {}
}
// 开始连接
referrerClient.startConnection(installListener)
}
|
注意点
startConnection() 之后,一定要注意 endConnection(),否则有时候会出现
1
|
android.os.DeadObjectException
|
这个错误。这点在官方文档中没有提到,需要注意下。