我们能为您提供什么帮助?

广告平台的SKAN对接指南

  • 更新

概要:概要:广告平台与AppsFlyer完成SKAdNetwork(SKAN)对接后,便可获得SKAN归因结果并进行相应的投放优化。

AppsFlyer可为广告平台提供以下优势:

如需了解AppsFlyer为广告主提供的SKAN解决方案,请参见以下文档:

SKAN解决方案指南 | SKAN面板

  • 广告转化归因:
    • 广告平台与AppsFlyer对接后,可确保广告主在该平台上的投放所带来的所有应用激活、应用内事件以及收入都得到准确归因
    • 如果没有对接,则这些激活、应用内事件和收入都会被归为自然量,而不会归因到平台 
  • 投放优化:
    • 回传中的转化值是编译后的值。
    • AppsFlyer支持广告平台对每条回传里的转化值进行解析,并根据解析后的值对相关应用的营销投放进行优化。
  • 无需针对每个广告主分别完成对接——SKAN回传只发送给广告平台,广告主侧如果想获取对应数据,可采用以下任一方式:
    • 分别与每个合作的广告平台进行对接。但不管是广告主还是广告平台,都无法使用这种方式实现大量级的对接。 
    • 与AppsFlyer对接。只需一个对接就能全面铺开,对广告主和广告平台来说都是极为高效的对接方式。
  • 让您的渠道在AppsFlyer平台中脱颖而出: 
    • AppsFlyer会对支持SKAN对接的广告平台进行认证并予以特别标识。 
    • 便于使用SKAN的广告主准确定位到支持SKAN归因的广告平台。

SKAN数据流

5754_Postback_flow_for_SKAD__1_.png

完整的SKAN回传链路包含以下几个环节:

  1. iOS设备先将SKAN回传发送到获得归因的广告平台。
  2. 广告平台可选择下列两种方式的的任意一种:
    • 补充数据维度并转发补充数据维度并转发:广告平台会在其中添加广告系列ID/来源标识符(Source Identifier)、广告系列名称、iOS设备所在IP地址等信息,以细化回传数据。 
    • redirect
  3. AppsFlyer会对回传进行验证和解析,然后将解析并扩充后的回传数据发回给广告平台(同时同步给广告主)。

主要对接流程

AppsFlyer与广告平台的SKAN对接主要分为以下几个步骤(下文会有详细说明):

  • 广告平台将SKAN数据发送给AppsFlyer
  • AppsFlyer对SKAN数据进行解析和扩充,然后发回给广告平台

向AppsFlyer发送数据

广告平台接收到来自设备的SKAN回传后,会通过以下任一方式将其发送给AppsFlyer:

  • 补充数据维度并转发(POST)
  • 重定向(HTTP307重定向方式)

AppsFlyer接收到SKAN回传后会进行如下处理:

  • 将解析后的回传发送到广告平台。
  • 通过数据面板和报告将归因数据提供给广告主和广告平台。

补充数据维度并转发

广告平台可使用此方法将其从设备侧接收到的各次回传分别转发到AppsFlyer。

广告平台

  • 接收来自iOS设备的回传。
  • 【必须完成】在回传数据中补充以下维度:
    • 相关广告系列在广告平台中的ID和名称。
    • iOS设备发送回传的时间戳。 
  • 【可选】在回传数据中补充以下维度:
    • 从设备收到的IP地址,主要用于地理位置解析。
    • 广告组ID和名称
    • 广告ID和名称
    • Ad network name
    • Country code
    • Source app ID
    • Creative
    • 流量入口(Channel)
  • 完成上述数据扩充后,再将回传发送到AppsFlyer
  • 请注意:注意:向AppsFlyer转发回传之前,广告平台必须先通过回传内容验证Apple的归因签名/strong>(Attribution Signature),避免对数据造成意外损坏。

扩充后的SKAN数据回传规范

端点

https://skadpostbacks.appsflyer.com/api/postbacks

HTTP方法 POST
可用格式 application/json
响应码

200 OK200 OK:接收到的回传格式正确。 

21Bad request(请求无效)400:请求无效——JSON文件格式错误、文件为空、缺失必要字段。

扩充后的JSON格式SKAN回传参数

参数

格式

说明

流量来源

version 字符串

SKAdNetwork版本

示例:"version":"2.0"

SKAN回传
ad-network-id 字符串

Ad network ID

示例:"ad-network-id":" abc123defg.SKAdnetwork"

SKAN回传
ad-network-name 字符串
  • 广告平台名称
  • 示例:ad_network_name=your_network
广告平台
ad-network-country-code 字符串
  • 广告平台得出的用户位置信息(国家/地区)
  • 使用ISO 3166(alpha-2)代码填充该字段
  • 比如
  • 广告平台一般会通过广告系列的投放地区得出国家/地区信息
  • AppsFlyer会使用国家/地区代码来填充报告和面板中与地理位置有关的字段
广告平台
campaign-id 整数
  • 仅限SKAN 3及以下版本
  • SKAdNetwork 广告系列 ID
  • 示例:"campaign-id":23
SKAN回传
transaction-id 字符串

SKAdNetwork回传交易ID(transaction ID)

SKAN回传
app-id 整数
  • AppsFlyer中目标应用的App ID,总是以“id”开头。
  • 示例:app_id=id123456789
SKAN回传
Attribution signature 字符串 Attribution signature SKAN回传 
redownload 布尔 redownload = true时,表示该用户再次从App Store下载相关应用 SKAN回传
source-app-id 整数 SKAN回传
conversion-value 整数

AppsFlyer SDK 根据广告主的配置设置的转化值

注意:

  • 受iOS隐私保护阈值限制而无法在回传中填充该字段时,对应的值会显示为null。
  • null值和0值的意义不同:
    • null值表示iOS拒绝披露相关的转化值。
    • 210值表示该用户激活了应用,但未记录到其完成任何转化操作。  
SKAN回传 
ad-network-campaign-id 字符串

为了确保广告主、广告平台和AppsFlyer之间的数据解读方式一致,请务必提供广告系列ID

广告平台
ad-network-campaign-name 字符串 广告平台中的广告系列名称,与该广告平台为相应广告系列赋予的ID相关联。该名称会呈现在面板和报告中。  广告平台
ad-network-adset-id 字符串

广告组ID

广告平台
ad-network-adset-name 字符串

广告组名称

广告平台
ad-network-ad-name 字符串

广告名称

广告平台
ad-network-ad-id 字符串

广告ID

广告平台
ip 字符串
  • 回传发送设备的IP地址
  • 支持 iPv4 及 IPv6 地址
  • 示例:"ip":"198.51.100.1"
广告平台
timestamp 字符串
  • 广告平台接收到SKAN回传的时间,
  • 举例来说, UTC时间2020年8月4日07:25的时间戳为:
广告平台
fidelity-type 整数
  • 用于区分广告呈现方式,这会影响到归因结果。通过0和1来表达,具体如下:
    • 浏览型广告(View-though Ads):0
    • 渲染型广告(StoreKit-rendered Ads):1
  • 从SKAN V2.2开始,该字段为必要字段
SKAN postback (V2.2+)
did-win 布尔
  • 用于区分激活助攻和获得激活归因的广告系列
  • 如果该字段值为true,则表示该广告系列获得了此次激活的归因
  • 如果该字段值为false,则表示该广告系列在此次激活中形成助攻
SKAN postback (V3.0+)
ad-network-source-app-id 字符串

该字段以publisher ID填充,即发布相关广告的应用所关联的ID。一般指您为该流量侧应用指定的ID,而非Apple生成的ID。 

广告平台

postback-sequence-index

整数
  • 仅限SKAN 4+
  • 该参数的值代表SKAN窗口序号,可能出现的值为0、010或121。
SKAN 4.0回传(iOS 16.2)

coarse-conversion-value

字符串
  • 仅限SKAN 4+
  • 在第1梯队的首次回传以及第1-3梯队的第二和第三次回传中可用。详见Apple相关文档。
SKAN 4.0回传(iOS 16.2)

source-identifier

字符串
  • 仅限SKAN 4+
  • 该字段的值最多可有四位数
  • 在首次回传中,第2-3梯队最多可获得4位数字,第0-1梯队最多可获得2位数字。在第二和第三次回传中,第1-3梯队可获得2位数字。而第0梯队没有第二和第三次回传。详见Apple相关文档。

SKAN 4.0回传(iOS 16.2)

source-domain

字符串
  • 仅限SKAN 4+
  • 该字段的值代表可归因的网页广告来源比如
  • 详见Apple相关文档。
SKAN 4.0回传(iOS 16.2)

creative

字符串
  • 仅适用于SKAN 4+
  • 在source_identifier中使用额外数位以细化广告系列颗粒度时可用
广告平台

channel

字符串
  • 仅适用于SKAN 4+
  • 在source_identifier中使用额外数位以细化广告系列颗粒度时可用
广告平台

Curl示例—扩充后的SKAN 3回传数据

curl --location --request POST 'https://skadpostbacks.appsflyer.com/api/postbacks?app_id=id888707074' \
  --header 'Content-type: application/json' \
  --data-raw '{
      "version":"3.0",
      "app-id": 888707086,
      "ip": "192.0.2.0",
      "ad-network-campaign-name": "skadnetwork_abc_campaign",
      "source-app-id": 888707074,
      "ad-network-id": "abcabcabc.skadnetwork",
      "transaction-id": "68eb3d91-15f5-44ee-9267-25c7655c20b6",
      "redownload": false,
      "attribution-signature": "MDYCGQCsQ4y8d4BlYU9b8Qb9BPWPi+ixk/OiRysCGQDZZ8fpJnuqs9my8iSQVbJO/oU1AXUROYU=",
      "timestamp": "1596525944",
      "ad-network-campaign-id": "222222",
      "conversion-value": 63,
      "campaign-id": 99
  }'

Curl示例—扩充后带精细转化值的SKAN 4回传数据

curl --location --request POST 'https://skadpostbacks.appsflyer.com/api/postbacks?app_id=id888707074' \
  --header 'Content-type: application/json' \
  --data-raw '{
      "version": "4.0"
      "ad-network-id": "example123.skadnetwork",
      "ad-network-campaign-name": "skadnetwork_abc_campaign",
      "ad-network-campaign-id": "222222",
      "source-identifer": "5239",
      "app-id": 525463029,
      "transaction-id": "6aafb7a5-0170-41b5-bbe4-fe71dedf1e30",
      "redownload": false,
      "source-app-id": 1234567891,
      "fidelity-type": 1, 
      "did-win": true,
      "conversion-value": 63
      "postback-sequence-index": 0
      "attribution-signature": "MEUCIGRmSMrqedNu6uaHyhVcifs118R5z/AB6cvRaKrRRHWRAiEAv96ne3dKQ5kJpbsfk4eYiePmrZUU6sQmo+7zfP/1Bxo="
  }'

Curl示例—扩充后带粗略转化值的SKAN 4回传数据

curl --location --request POST 'https://skadpostbacks.appsflyer.com/api/postbacks?app_id=id888707074' \
  --header 'Content-type: application/json' \
  --data-raw '{
      "version": "4.0"
      "ad-network-id": "example123.skadnetwork",
      "ad-network-campaign-name": "skadnetwork_abc_campaign",
      "ad-network-campaign-id": "222222",
      "source-identifer": "39",
      "app-id": 525463029,
      "transaction-id": "6aafb7a5-0170-41b5-bbe4-fe71dedf1e31",
      "redownload": false,
      "source-app-id": 1234567891,
      "fidelity-type": 1, 
      "did-win": true,
      "coarse-conversion-value": "high"
      "postback-sequence-index": 0
      "attribution-signature": "MEUCIQD4rX6eh38qEhuUKHdap345UbmlzA7KEZ1bhWZuYM8MJwIgMnyiiZe6heabDkGwOaKBYrUXQhKtF3P/ERHqkR/XpuA="
  }'

重定向

Redirect_us-en__2_.png

在此方法中,广告平台使用HTTP重定向指令(307)来响应iOS设备发出的SKAN信息,请求设备将SKAN回传直接发送到AppsFlyer。

重定向方法具有以下优势:


启用方式

  1. 配置您的服务器以使用HTTP 307对SKAdNetwork回调进行响应,将回调信息重定向到 https://skadredirect.appsflyer.com/api/redirects
  2. 您可以在SKAN回传中添加下表所列的广告系列信息查询参数。请务必在回传中发送广告系列信息,因为我们需要通过这些信息补充SKAN回传中的成本等投放数据,这样广告主才能有效地优化其投放。

重定向的SKAdNetwork请求示例

https://skadredirect.appsflyer.com/api/redirects?
  &ad-network-campaign-id=243232&ad-network-campaign-name=yarg_campaign_name
  &ad-network-adset-name=dsdsa&creative=examplecreative&channel=channelexample

建议添加的广告系列相关参数(非必须)

查询参数

说明

ad-network-name
  • 广告平台名称
  • 比如
ad-network-campaign-id 即广告系列的ID
ad-network-campaign-name 即广告系列的名称
ad-network-adset-id Ad set ID(广告组ID)
ad-network-adset-name Ad set name(广告组名称)
ad-network-ad-id 即相关广告的ID
ad-network-ad-name 即相关广告的名称
ad-network-country-code
  • 广告平台得出的用户位置信息(国家/地区)
  • 使用ISO 3166(alpha-2)代码填充该字段
  • 比如
  • 广告平台一般会通过广告系列的投放地区得出国家/地区信息
  • AppsFlyer会使用国家/地区代码来填充报告和面板中与地理位置有关的字段
ad-network-source-app-id 该字段以publisher ID填充,即发布相关广告的应用所关联的ID。一般指您为该流量侧应用指定的ID,而非Apple生成的ID。
ip
  • 回传发送设备的IP地址
  • 支持 iPv4 及 IPv6 地址
  • 比如
timestamp
  • 广告平台接收到SKAN回传的时间,
  • 举例来说, UTC时间2020年8月4日07:25的时间戳为:
creative
  • 仅适用于SKAN 4+
  • 在source_identifier中使用额外数位以细化广告系列颗粒度时可用
channel
  • 仅适用于SKAN 4+
  • 在source_identifier中使用额外数位以细化广告系列颗粒度时可用

接收AppsFlyer发送的数据

开始接收回传之前,需先考虑以下事项: 

  • 广告平台必须设定回传端点和模板(请通过渠道支持微件联系您的PDM,以确保该设置妥善完成)。
  • AppsFlyer发送SKAN回传时使用的机制与iOS向广告平台发送SKAN回传的机制相同。

原理

  • 对于广告平台侧发送到AppsFlyer的每条回传,AppsFlyer都会发送:
    • 一条激活回传。AF会使用“redownload”参数来标识重新下载行为。
    • 零次到数次的应用内事件回传。具体次数取决于转化值的解析结果,详见模拟回传。

广告平台可用的回传宏

回传宏(名称)

说明

格式和示例 仅适用于应用内事件

site_id

发布广告的应用(即Source App ID,流量侧应用ID)

字符串:876534

 

install_time

由AppsFlyer根据updateConversion窗口估算。以10位UNIX时间戳或人类可读的时间戳表达。

  • 字符串:1596119460 
  • 转换为UTC时间2020年7月30日14:31。
 

skadnetwork_ad_network_time

广告平台从iOS设备接收到回传的时间。由广告平台上报。以10位UNIX时间戳或人类可读的时间戳表达。

  • 字符串:1596119460 
  • 转换为UTC时间2020年7月30日14:31。



 


skadnetwork_received_time

AppsFlyer从广告平台接收到回传的时间。以10位UNIX时间戳或人类可读的时间戳表达。

 

  • 字符串:1596119460 
  • 转换为UTC时间2020年7月30日14:31。

 

event_name

事件名称 

  • af_skadnetwork_revenue
  • af_login
  • af_skadnetwork_revenue
  • 或由广告主设置 

字符串:af_skadnetwork_revenue, abc123

 

是

revenue

以指定货币代码为单位的收入金额

数字21

是

currency

货币代码为广告主在AF后台针对相关应用设置的指定货币。

字符串:

是

attribution_source

归因数据的来源:

SKAdNetworkSKAdNetwork

字符串:SKAdNetwork

 

app_id

App ID(广告主应用)

字符串:ID123456790

 

country

由广告平台判定的激活所在国家

字符串: 

 

campaign

广告系列名称使用从广告平台回传的d-network-campaign- name 填充

字符串:UA_US_23+

 

campaign_id

使用广告平台回传中发送的广告系列 ID 填充广告系列 ID。请注意:请注意:在SKAN 4中,该值总是为null。

字符串:3456745

 

redownload

可能出现的值为:true、false

redownload = true时,代表该用户再次从App Store下载相关应用

布尔值:true / false

 

skadnetwork_ambiguous_event

广告主在面板中更改SKAN设置后的最初72小时内接收到的事件。由于SKAN使用的计时器过多,因此AppsFlyer无法准确地映射该事件。

布尔值:true / false

 

skadnetwork_campaign_id

原始SKAN回传中提供的SKAN广告系列ID

56, 23

 

af_skadnetwork_nonce

具有唯一性的随机标识符,便于渠道识别重复的回传

 

 

event_id

广告平台为对应事件赋予的名称/ID。

 

是

transaction_id

SKAN回传交易ID

请注意:注意: 广告主必须手动开通AppsFlyer与广告平台之间的transaction_id共享。您可以让广告主在AppsFlyer后台的对接板块中完成相关操作。

 

 

ad_network_adset_id 由广告平台添加到iOS回传中 字符串  
ad_network_adset_name 由广告平台添加到iOS回传中 字符串  
ad_network_ad_name 由广告平台添加到iOS回传中 字符串  
ad_network_ad_id 由广告平台添加到iOS回传中 字符串  
SKAN_min_event_counter 参见脚注(1)

整数

是
SKAN_max_event_counter 参见脚注(1)

整数

是
SKAN_min_time_post-install 参见脚注(2)

整数

是
SKAN_max_time_post-install 参见脚注(2)

整数

是
SKAN_min_event_revenue 参见脚注(3) 实数 是
SKAN_max_event_revenue 参见脚注(3)

实数 

是
fidelity-type

用于区分广告呈现方式,这会影响到归因结果。通过0和1来表达,具体如下:

  • 浏览型广告(View-though Ads):0
  • 渲染型广告(StoreKit-rendered Ads):1
整数  
skad_af_attribution_flag

用于标识该用户是否由AppsFlyer通过单一可信数据源机制归因。

布尔  
skad_postback_sequence_index
  • 该字段代表SKAN窗口,可能出现的值为0、1或2。
  • 在SKAN 3中,该字段的值为0。
整数  
skad_coarse_conversion_value
  • 在SKAN 3中,该字段的值为0。
字符串  
skad_source_identifier
  • 该字段的值最多可有四位数
  • 在SKAN 3中,该字段的值为0。
字符串  
skad_source_domain
  • 该字段的值代表可归因的网页广告来源
  • 在SKAN 3中,该字段的值为0。
字符串  
ad_network_creative
  • 该字段的值基于广告平台提供的扩充数据得出
  • 在SKAN 3中,该字段的值为0。
字符串  
ad_network_channel
  • 仅适用于SKAN 4+
  • 在source_identifier中使用额外数位以细化广告系列颗粒度时可用
字符串  

请注意:

  1. 事件次数
    [round up (SKAN_min_event_counter+SKAN_max_event_counter) / 2]
    请注意:必须四舍五入取整。
  • 举例来说,
    • A. A. 如果min=0且max=1,则事件数量为1。
    • B. A. 如果min=0且max=1,则事件数量为1。
  • 判断激活时间:对于使用自定义衡量模式(Custom)的广告主,AppsFlyer的激活时间计算方式为:回传接收时间 - 48h - (min_time_post_install + max_time_post_install)的平均值。广告平台不需要使用这些宏。  
  • 判断收入:AppsFlyer使用这些值来判断某个事件的收入,计算方式为(min + max)/2。广告平台不需要使用这些宏。 

SKAN回传示例

AppsFlyer发送的SKAN激活回传示例

http://YourCompanyDomain.com/event?site_id=(publisher-id)&install_time=(timestamp)
  &skan_ad_network_time=(timestamp)
  &skan_af_received_time=(timestamp)
  &attribution_source=skadnetwork
  &app_id=(id123456789)&country=(ZA)&campaign=(campaign-name)
  &campaign_id=(campaign-id)&SKAN_ambiguous_event=(boolean)
&redownload=(boolean)
&af_SKAN_nonce=(uuid)

AppsFlyer发送的SKAN应用内事件回传示例

http://YourCompanyDomain.com/event?site_id=(publisher-id)&install_time=(timestamp)
  &skan_ad_network_time=(timestamp)
  &skan_af_received_time=(timestamp)&revenue=(value)
  &currency=(code)&event_name=(event-name)&attribution_source=skadnetwork
  &app_id=(id123456789)&country=(ZA)&campaign=(campaign-name)
  &campaign_id=(campaign-id)&SKAN_ambiguous_event=(boolean)
&redownload=(boolean)
&af_SKAN_nonce=(uuid)

对接测试

您可以使用以下任一方式测试您的平台与AppsFlyer的SKAN对接:

  • 真实的SKAN回传:基于广告平台收到的实际SKAN流量进行测试
  • 模拟回传:基于AppsFlyer的测试应用

如需从iOS设备侧接收到真实的SKAN回传,广告平台必须完成以下工作:

  • 在Apple的开发者网站中注册为广告平台
  • 使用SKAN签名对广告进行标记。
  • 流量侧应用(Publisher App)流量侧应用(Publisher App):将广告平台ID添加到info.plist文件中,并/a>在广告展示时调用loadProduct。
  • V6.0.3之前的版本不支持SKAdNetwork归因。

接收模拟回传:

  • 请使用渠道支持微件联系我们并申请模拟应用对接。
  • 请明确告知您在测试中要使用的App ID(从下一小节的列表中选择)。

真实环境测试

在该方法中,广告平台需针对实际使用中的应用向AppsFlyer发送其真实的SKAN回传。 

测试对接

负责人员 操作
广告平台 与您的AppsFlyer PDM联系(或使用渠道支持微件),告知您的SKAN平台ID(由Apple提供)。
广告平台和AppsFlyer 确认要参与回传对接测试的客户(需接入最新的AppsFlyer SDK)。
广告平台 使用本文所述的任一方法将相关应用的SKAN回传发送给AppsFlyer。
AppsFlyer 根据广告客户设置的转化价值映射关系,将解码后的应用内事件信息发送到广告平台。

测试成功标准:

负责人员 操作
广告平台 测试结束后,广告平台需向AppsFlyer提供以下信息:广告平台在指定时间段内为测试客户发送的SKAN回传数量。
AppsFlyer 对比收到的回传数量与广告平台发送的数量。
AppsFlyer

按以下分类将发送到相关广告平台的回传数量信息分享给该平台:

  • 激活/重新下载(redownload)
  • 应用内事件
请注意:注意:如果您用于接收SKAN回传的端点与概率模型归因回传的端点相同,请务必使用attribution_source=skadnetwork/span>,筛选出SKAN回传。

模拟回传

  • 广告平台可使用此方法将AppsFlyer预先备制的回传数据发送到AppsFlyer测试应用,具体说明请见下表。然后AppsFlyer会把解析完毕的转化信息再回传给广告平台。
  • 各测试应用的转化值映射构架都有所不同,具体请见下表。
App ID(应用ID) SKAN衡量模式 操作说明
id888707085

收入模式,且转化值每增加1,代表收入增加$1

预期结果: 

  1. 在对接选项卡中,打开应用内事件回传开关。
  2. 在事件名称中选择af_SKAN_revenue,并将其关联到您对应的事件标识符。
  3. 保存配置。
  4. 回传中发送的转化值 = 7。
  5. AppsFlyer解码后回传:
    • 1次激活
    • 值为$7的af_SKAN_revenue
id888707086 转化模式,且记录以下事件:
  • af_level_complete
  • af_login
  • af_SKAN_revenue
  • af_register
  • af_subscription
  • af_custom_event
  1. 在对接选项卡中,打开应用内事件回传开关。
  2. 选择列表中的各个应用内事件,并将其关联到您对应的事件标识符。
  3. 保存配置。
  4. 回传中发送的转化值 = 63。
  5. AppsFlyer解码后回传:
    • 1次激活
    • af_level_complete
    • af_login
    • af_register
    • af_subscription
    • af_custom_event
id888707087 使用af_SKAN_revenue事件记录到的互动
  1. 在对接选项卡中,打开应用内事件回传开关。
  2. 将名为af_SKAN_revenue的事件关联到您对应的事件标识符。
  3. 保存配置。
  4. 回传中发送的转化值 = 3。
  5. AppsFlyer解码后回传:
    • 1次激活
    • af_SKAN_revenue事件的3次回传

对接流程

负责人员 操作
广告平台
广告平台
  1. 激活测试应用。
  2. 为各应用完成上表所列操作。 
  3. 使用上表所列的测试应用发送模拟回传。发送模拟回传时请注意以下事项:
    • 请按照上表内容设置模拟回传中的app_id和转化值。 
    • 由于广告平台无法生成Apple支持的签名,因此模拟回传中不必带有签名字段。AppsFlyer不会验证模拟回传中的签名。
    • AppsFlyer支持广告平台使用POST或REDIRECT方法发送回传。
AppsFlyer 对模拟回传中的转化值进行解析,并再次回发给广告平台

测试成功标准:

负责人员 操作
AppsFlyer 处理广告平台发来的模拟回传并将解析后信息发送到广告平台。
广告平台
  • 广告平台接收到解析后的回传。
  • 确认AppsFlyer发送的回传与预期的事件回传内容完全一致。比如对于标识符为ID888707087的应用,假设其转化值为3,则广告平台会收到3次af_SKAN_revenue事件的回传。 

说明

有关必要字段、数据维度补充、认证等的说明。

常见问题解答

关于回传的常见问题答疑

是否必须添加维度补充字段?

就目前而言,即使回传中缺失一个或多个必要的维度补充参数,我们也会对其进行处理。但基于以下原因,仍建议广告平台在回传中添加这些参数: 

  • ad_network_campaign_id 
  • ad_network_campaign_name 
  • IP address(IP地址) 
  • 时间戳时间戳:该信息能帮助我们正确地将激活匹配到激活发生的日期。 

是否只能发送广告系列ID或广告系列名称,不能两者同时发送?

参见上一条答案。您可以使用同一个值来填充ID和名称字段。 

 

可以。只要归因签名(Attribution Signature)有效,我们就会处理回传并忽略额外的信息。

SKAN回传模板是否不同于现行回传模板?

是两者的流程和结构不同。

对于同一个激活是否会同时收到SKAN回传和概率模型/确定性归因回传(即出现激活的重复上报)?

可以,无论归因方法如何,对于每一个归因到某广告平台的激活,我们都会上报一条激活记录,并向该广告平台发送一条回传。

您可以使用attribution_source来筛选出SKAN回传。

广告平台是否需要处理来自AppsFlyer的回传?

不必处理回传,但建议使用回传中上报的用户质量信息对广告投放进行相应的优化。

除了发送带有SKAN信息以及补充数据的回传,是否还需要调用AppsFlyer归因链接?

不需要。广告平台只需向我们发送SKAN有效信息和补充数据即可。

如何在AppsFlyer面板中获得SKAN对接渠道的认证?

  • 使用本文所述的任一方式完成对接
  • 将AppsFlyer作为归因合作方,向我们发送相关应用的回传

1-100的SKAN广告系列ID限制对我有何影响? 

1-100的广告系列ID限制会影响您在Apple中对广告系列进行标识和编号的方式。在该限制下,您针对一个应用最多只能同时投放100个独立的广告系列。AppsFlyer支持您使用实际的广告系列名称和ID来对回传数据进行补充。也就是说,您可以将SKAN广告系列ID关联到回传送达时您实际使用的广告系列ID。只要您对于某个应用同时投放的广告系列不超过100个,则完成上述映射配置后,您对广告系列的标识及编号方式就不受1-100的ID限制影响。