当前位置: 代码迷 >> 综合 >> AppsFlyer SDK的使用
  详细解决方案

AppsFlyer SDK的使用

热度:18   发布时间:2024-02-22 16:58:18.0

AppsFlyer SDK的使用

  • 前言
  • 一、AppsFlyer涉及的域名
  • 二、延迟深度链接/深度链接
  • 三、User Invite SDK


前言

前段时间,因项目需要,初次接触到AppsFlyer这个平台,它可以为广告主统计不同广告投放渠道带来的收益。具体介绍,在此就不展开了,大家可以去官网查询,官网介绍的更加详细。这篇文章重点介绍如何使用AF的功能。

相关链接:

  • Android SDK
  • 延迟深度链接
  • User Invite SDK

一、AppsFlyer涉及的域名

1、https://conversions.appsflyer.com
该域名用于SDK上报App首次打开的session数据,包含用户的设备id,供AF归因。

2、https://gcdsdk.appsflyer.com
该域名为获取AF服务器端归因数据接口,当上面接口收到response code 200之后,SDK自动通过该域名向AFserver获取归因结果并返回到回调函数onConversionDataSuccess()内,该接口只有APP首次打开会被调用,之后回将归因信息存到本地, 之后回调函数从本地获取。

3、https://inapps.appsflyer.com
该域名为上报事件接口

4、https://launches.appsflyer.com
该域名为上报APP第二次及以后每次打开的session,供AF计算留存或者DAU等数据。

二、延迟深度链接/深度链接

  • 延迟深度链接:针对未安装app的用户,在用户点击了延迟深度链接后,会将用户引导至应用商店app下载页面进行下载。用户在安装后,会自动打开延迟深度链接指定的app页面。
  • 深度链接:针对已安装app的用户,在用户点击了深度链接后,会唤起app跳转到指定页面。

问题1:用户是如何在安装app后,仍能够拿到未安装时点击的延迟深度链接信息,跳转到指定页面呢?

首先AppsFlyer就是做归因的,当用户点击onelink时,会将点击信息发送给AF服务器,当APP打开时,SDK会收集相关信息上报给AF服务器,AF服务器会通过自己的归因模型来对点击和SDK上报的信息进行匹配,匹配成功便有归因结果返回给回调函数onConversionDataSuccess(),开发者只需要在该回调函数内,对获取的数据解析开发跳转逻辑即可。

问题2:是否在点击链接时收集了用户的某个唯一标识id,然后在用户首次安装后上报session数据,供AF归因,然后通过唯一标识id的匹配,从AF服务器拿到归因数据呢?

在点击链接时,AF SDK会收集设备id,如果可以收集到设备id的话,可以通过设备id匹配。如果无法获取设备id,还是有Ephemeral matching归因模型

总结,对于延迟深度链接的逻辑,如下图:
在这里插入图片描述

三、User Invite SDK

AppsFlyer除了在统计平台的“OneLink自定义链接”生成深度链接和延迟深度链接之外,还可以通过AppsFlyer User Invite SDK生成归因链接。

1、AF的奖励机制

通过归因链接,可以对邀请者进行奖励。AF有两种奖励机制,分别是“激活”奖励和“app内事件”奖励。
在这里插入图片描述

  • “激活”奖励:分享生成归因链接的时候,通过setReferrerCustomerId(String referrerCustomerID)设置cuid。受邀者通过AF归因链接下载、安装、打开app后,通过getConversionData()拿到的af_referrer_customer_id对应了邀请者的cuid。
  • “app内事件”奖励:通过addParameter(String key, String value)设置cuid,其中key为“af_sub1”,受邀者通过AF归因链接打开app后,通过getConversionData()拿到的af_sub1对应了邀请者的cuid。

2、AF归因链接样式

AF归因链接默认携带设置的各种参数,链接的长度较长。有些业务场景并不希望用户参数在生成的归因链接中显式呈现。采用一下解决办法:

  • 在af初始化之后,startTracking()方法调用之前设置onelink id(在AF统计平台可以查询)。
AppsFlyerLib.getInstance().setAppInviteOneLink("XX");

通过generateLink生成的归因链接隐藏了参数信息且长度较短,并且通过gcd数据依旧可以获取分享者的信息。

  相关解决方案