OneLink问题排查及疑难解答

概要:如果OneLink自定义链接在测试和调试过程中出现跳转/功能问题,您可以在本文中快速找到解决方法。

OneLink故障排查指南

OneLink常见问题答疑

OneLink模板常见问题解答

如何在Universal Links、App Links和URI schemes中选择最合适的应用调起方式?

Universal Links:98%的iOS用户都需要使用此方法来调起应用

App Links:适用于6.0及以上版本的安卓用户。请注意:三星的操作系统无法通过安卓App Links打开应用。

 注意

使用Universal Link和App Link调起应用时,都需要证明用户所点击的URL中的域名(即OneLink自定义域名或品牌域名)属于且关联到要打开的应用。您可以通过Apple App Site Association(AASA)文件(适用于iOS)和Assetlinks文件(适用于安卓)来关联域名。

这些文件存于AppsFlyer服务器或广告主网站中。默认情况下,在您创建OneLink模板并设置Universal Link和App Link时,AppsFlyer会自动生成并托管这些文件。

URI schemes:这是在三星设备上调起应用的主要方式。在非三星设备上,这是一种较为传统的应用调起方式,您可以将其作为备用方案。该方式可用于以下场景中:

  • 为6.0以下版本的安卓用户打开应用(在总体安卓用户中的占比不到15%)
  • Universal Link和App Link失效或尚未设置时,作为备用方式打开应用

    请注意:将URI scheme作为Universal Link的备用方案时,其功能性会受到iOS相关限制的影响。另请参考此文档了解详情。

深度链接

Universal Link、App Link和URI scheme都是安全的应用打开方式。如需通过深度链接让用户跳转到应用中的具体页面或体验,请参考OneLink深度链接指南

哪些操作系统支持通过URI scheme打开应用?

操作系统 URI scheme是否能打开应用
iOS 可以在Universal Link失效时作为备用方案调起应用。

 

重要说明:

  • 将URI scheme作为Universal Link的备用方案时,其功能性会受到iOS相关限制的影响。
  • 对于大部分浏览器(包括Safari),都必须在URL中添加 af_force_deeplink=true参数,才能将URI scheme作为备用方式打开应用。另请参考此文档了解详情。
Android 可以用于三星设备和6.0以下版本的安卓系统,或在之后的安卓版本中作为App Link失效时的备用方案。
Amazon
Windows Mobile

iOS的Universal Link和安卓的App Link设置完毕后是否需要更新应用?

是的。您每次配置Universal Link或App Link为现有用户打开应用时,iOS Associated Domains或AndroidManifest.xml都会更新,因此您必须向对应的应用商店上传更新后的应用。小贴士:为了尽量减少应用更新的频次,建议您一次性完成应用打开深度链接中所有与开发相关的必要更新。 

是否能让现有用户跳转到网页,而非应用?

可以,但以此方式配置模板后会影响所有用户(潜在用户及现有用户)——相关的链接会让所有人都跳转到落地页/网页URL。也就是说,潜在用户不会被引导到应用商店。

如需让用户跳转到网页,请按以下步骤操作:

  1. 不要在您的模板中设置Universal Link、App Link或URI scheme。
  2. 为未激活相关应用的用户设置跳转,将其引导到落地页/网页URL。
    • 将落地页/网页URL添加为af_android_url和af_ios_ur的参数值。
    • 在已激活相关应用的设备中(即对于现有用户),跳转设置也会自动生效。 

注意事项:如果您想要让现有用户在打开应用后跳转到移动端网页,需要您的开发人员在应用中配置该行为。

是否能让平板用户和手机用户跳转到不同的应用或URL?

您可以针对以下设备设置专用的跳转行为:

  • Windows Phone
  • iPad
  • Amazon Kindle Fire

目前尚不支持其它平板设备的专用跳转。

是否能将同一个应用放到多个OneLink模板下?

是的。虽然一个OneLink模板就可以生成无限多条OneLink URL,但有些情况下,您可能需要将同一个应用分配到多个OneLink模板下。举例来说,假设您的安卓应用有多个版本,分别在不同的第三方应用商店上架,您就需要为每个安卓应用版本都设置一个OneLink模板,并将对应的iOS应用分配到所有模板下。

注意事项

对于使用iOS Universal Link和安卓App Link打开应用的模板,如果模板中有多个子域名,则必须为每个子域名都配置并更新您的iOS和安卓应用,具体方法如下: 

  • iOS Universal Links:新建OneLink模板并在应用中更新关联的域名后,向App Store提交更新版本的应用。只有更新到新版本的iOS用户才能激活基于新模板创建的OneLink链接。
  • 安卓App Link:
    1. 创建新的OneLink模板后,复制App Link部分底部的XML代码段。在您需要深度链接的intent以及所有之前的intent中,将该代码段粘贴到AndroidManifest.xml文件里。
    2. 在商店上架新版本的应用。只有更新到新版本的安卓用户才能激活基于新模板创建的OneLink URL。

OneLink模板中的子域名可否更改?

可以,但您必须先确保该模板下没有任何自定义链接。

如果AppsFlyer平台中还有基于此模板创建的自定义链接,则相关子域名无法更改。我们设置这一限制的目的是为了防止正在使用中的链接跳转/深度链接行为出现中断。

对于仍含有自定义链接的模板,如果您确实需要更改其子域名,可以使用以下任一方式: 

  • 使用新的子域名创建一个新的OneLink模板,并在该模板下创建链接。
  • 在需要更改子域名的模板下,删除所有现存的自定义链接。将所有基于该模板创建的链接全部删除后,子域名部分就会显示为可编辑。

不同OneLink模板的域名/子域名和模板ID是否可以混搭?

不可以。如果您将某个模板和模板ID专用的域名/子域名手动拼接到另一个模板ID,会导致Universal Link和App Link失效,并造成安全隐患。

示例:

  • ID为1ABC的模板下配置的子域名为bank.onelink.me
  • ID为D123的模板下配置的子域名为game.onelink.me
  • 您在1ABC模板下创建链接bank.onelink.me/1ABC/shorturl。该链接可正常生效。
  • 您在D123模板下创建链接game.onelink.me/D123/exampleurl。该链接可正常生效。
  • 若创建的链接为game.onelink.me/1ABC/shorturl,该链接将无法生效。
  • 若创建的链接为link bank.onelink.me/D123/exampleurl,该链接将无法生效。

是否能在多个模板中使用同一个子域名?

可以,但必须单独创建带有该子域名的模板,切勿手动将该子域名添加到模板ID中。 

如何为Chrome操作系统的用户实现跳转?

AppsFlyer将Chromebooks上的应用视为安卓应用。

如需让Chromebook平台中尚未激活应用的新用户跳转到专门的网页URL,请完成以下操作:

  1. 进入OneLink模板设置页面,配置链接参数 > 若用户未安装相关应用 > 安卓,点击让用户跳转到其他URL

    进入OneLink模板设置页面,深度链接与跳转 > 跳转 > 若用户未安装相关应用 > 安卓,选择网址
  2. 输入相关URL。
    通过链接设置添加URL时,该URL在您的链接中会以af_android_url参数表达。

OneLink链接常见问题解答

如果没有接入AppsFlyer SDK,OneLink是否能生效?

可以,但有一定局限。

如果您需要在短时间内将移动端网页用户转化为应用用户,且无法接入AppsFlyer SDK,这个方法也是可行的。

即使您的应用内没有接入AppsFlyer SDK,OneLink仍然可以实现基本的用户跳转和应用调起。此外,由于智能横幅的实现不需要SDK,因此在没有接入的情况下也能正常生效。

但SDK的缺失会造成以下影响:

  • 无法实现深度链接,即用户点击链接后只能打开应用,无法进入具体页面。
  • 无法记录归因数据。
  • 无法记录应用内事件。

OneLink自定义链接的创建方式有哪几种?

下表列出了OneLink自定义链接的创建方式,并对比了各种方式之间的差异。

链接创建方式 用途 短/长链 高级功能 是否在面板中呈现 归因效期(TTL)上限及默认值
AppsFlyer面板 创建OneLink模板和自定义链接 两者皆可 -- 无限制
OneLink API 快速创建大量OneLink -- 31天
OneLink链接批量创建功能 通过CSV文件中定义的参数快速创建大量OneLink短链 -- -- 365天
SDK 用户邀请(推荐)广告 -- -- 60天
OneLink 智能脚本 移动端网页到应用广告 -- -- 无限制
电子表格 使用您自己的计算方式创建大量OneLink自定义链接 -- -- 无限制

OneLink自定义链接是否能通过浏览器调起应用?

可以,但需注意Universal Link和App Link只有在用户点击链接时(比如网页或邮件中的链接)才能生效。如果用户将链接粘贴到浏览器的地址栏中,则无法调起应用。在测试链接时,请务必点击URL,而不要将其粘贴到浏览器的地址栏中。

OneLink链接为何无法为现有用户打开应用或实现深度链接?

即使您已经做了万全的准备,在部分情况下,您的OneLink链接可能还是无法按预期实现深度链接。这时,用户可能会跳转到应用商店或报错页面,而不是打开应用或深度链接到应用中的具体页面。

出现这种情况的原因有以下几种: 

  • 宿主应用问题:您在WhatsApp、Gmail、WeChat等应用中分享您的归因链接时,这些应用即称为宿主应用。宿主应用可能会使用不同的方式来激活被点击的链接(比如其内部的专用浏览器),其中有一部分会屏蔽所有的归因链接。
  • 浏览器问题:部分浏览器和操作系统对于链接的处理方式有所不同。比如在有些浏览器中,粘贴链接无效,必须点击该链接才能使其生效。 
  • 操作系统更新:操作系统(iOS和安卓)更新后可能会出现意想不到的漏洞,导致深度链接无法生效。
  • 设备问题:不同的智能手机、平板、笔记本等设备使用的iOS、安卓、Windows Mobile版本不同,而其他操作系统对于归因链接的处理方式则各不相同。
  • 配置问题:深度链接值中不能使用特殊字符,否则链接会失效。

为了应对这些问题,您可以通过备用URL和强制深度链接来优化用户体验。

备用URL

应用调起或深度链接失败时,备用URL可让用户跳转到指定的网页。注意:备用链接会将未安装应用的用户一并送往备用网页,而非应用商店。因此,请仅在向已安装应用的现有用户进行再营销投放时使用此方式。

启用备用URL时,请在OneLink模板或自定义链接设置中专门为未安装应用的用户配置相关的链接行为,让其跳转到其他URL。

different_url.png

该设置会在备用链接中添加af_ios_urlaf_android_url参数,表示跳转终点,让iOS用户跳转到af_ios_url参数中指定的页面,安卓用户跳转到af_android_url参数中指定的页面。 

 示例

以下方OneLink URL为例:

https://go.onelink.ly/qwerty?pid=source&af_dp=greatapp%3A%2F%2F&af_ios_url=www.yoursite.com/ios-bonus
&af_android_url=www.yoursite.com/android-bonus

正常情况下,点击此链接的iOS和安卓用户会被深度链接到应用中的具体页面。但如果深度链接失败,则用户会进行以下跳转:

  • iOS用户:www.yoursite.com/ios-bonus
  • 安卓用户:www.yoursite.com/android-bonus

 注意

  • 如果您在URL的参数值中使用井号(#),必须对其进行编码。

  • 发生跳转时,OneLink链接参数会传递到af_ios_urlaf_android_url中指定的页面。若要防止此行为,请在OneLink中添加参数af_param_forwarding=false

强制深度链接

您可以通过强制深度链接的方式使用URI scheme,作为应用调起和深度链接的备用方案。

该方案适用于大部分已安装应用的用户。但是对于iOS用户,URI scheme的应用调起方案用一定的局限性,您可能需要在OneLink URL中添加af_force_deeplink=true来强制执行深度链接,让用户进入URI scheme中指定的应用内页面(以af_dp参数表达)。详情请见iOS的URI scheme备用方案

OneLink能否在Brave中实现跳转?

是的。但用户在安卓设备的Brave浏览器中点击OneLink链接时,延迟深度链接会失效。而当用户在iOS设备上点击链接时,会出现空白页面,这时用户用户必须在该空白页面上有所操作(如滚动或触屏),才能让延迟深度链接生效。

OneLink自定义链接的加载时间是否会比其他链接长?

不会。OneLink自定义链接正常生效、实现跳转时不会产生额外的处理需求,也不会延长加载时间,在加载时长方面与其他AppsFlyer链接没有区别。

如何防止跳转时发生参数转发?

af_raf_ios_urlaf_android_urlaf_web_dp参数会从归因链接或OneLink链接传递到跳转后的页面。您可以在链接中添加af_param_forwarding=false来防止这类参数转发行为。

如何从跳转链接中移除AppsFlyer的PID和C参数,但保留所有其他参数?

您有时可能会看到带有多个PID的URL。这是因为AppsFlyer会在跳转链接中添加PID和C参数,而这时如果客户侧也在其中加入了自己的PID参数,就会出现这样的情况。比如“pid”在客户侧网站URL中可能代表“Product ID”(产品ID)。

一般情况下,在归因链接中添加af_param_forwarding=false就能移除所有参数。

但如果用户在PD端点击该链接,您可能需要在链接中保留基本的CRM参数。这时,您可以在该归因链接中添加af_base_params_forward=false,这样就能只移除AppsFlyer的PID和C参数,保留所有其他参数。

OneLink是否仍支持单平台自定义链接?

OneLink是目前唯一一个支持针对自有媒体创建自定义归因链接的解决方案。

过去,广告主还可以在没有OneLink的情况下使用单平台(分应用)的自定义链接。我们现在已弃用该方法,仅支持通过OneLink模板创建新的自定义链接。

但您之前遗留的单平台自定义链接仍可如常生效。您也可以在OneLink自定义链接页面点击右上角的查看旧版单平台链接按钮,查看并修改您的遗留链接。

保存链接后可否修改其短链ID?

不可以,短链ID仅可在链接创建的当下设置。

能否对OneLink自定义链接进行嵌套并将其缩短?

使用外部链接缩短器或对OneLink自定义链接进行嵌套会干扰Universal Link和App Link的应用调起功能。

激活Universal Link或App Link时,操作系统必须能识别出URL中与应用相关联的域名,因此在面向用户的链接中使用任何外部的嵌套、缩短或跳转都会导致激活失败。这些外部工具包括bit.ly、非AppsFlyer品牌链接,以及使用点击记录的邮件营销服务商(ESP)。

如需在确保跳转功能正常的情况下嵌套并缩短链接,请完成以下操作:

  • 您创建OneLink自定义链接时,AppsFlyer会生成相应的短链。请使用该链接,而非bit.ly等外部链接缩短器。
    提示:您还可以在短链中使用品牌域名,进一步缩短链接长度。如果您通过AppsFlyer面板创建链接,可以做到URL ID的极致精简,最终得到一个类似“https://brand.com/a1b2/a”结构的链接(其中brand.com是品牌域名,a1b2是4字符的模板ID,a是URL ID,最多可以缩短到1个字符。) 
    这一方法的优势在于:
    • 该方法能够生效的原因在于其使用了OneLink模板中配置的OneLink子域名。
    • 使用该方法时,您可以随时更改链接参数,包括各种深度链接设置,甚至在向潜在用户发送归因链接后仍能进行修改链接。
    • 该方法可统计来自移动端设备的点击,并呈现在AppsFlyer面板中,您无需再使用其他工具查看此数据。
    • 您可以使用品牌域名对短链中的最后一部分进行定制。
  • 使用URI scheme作为备用方案,在Universal Link和App Link失效时调起应用,并在链接中添加参数af_force_deeplink=true
  • 与邮件营销服务商合作时的可用方案详见此文档

是否能在邮件中使用OneLink自定义链接?

可以,但如果您与邮件营销服务商(ESP)合作,需要特别注意链接嵌套问题。ESP为了统计有效点击,会对邮件中的所有链接进行嵌套。用户点击链接后,这类嵌套会中断应用打开/深度链接流程。

您可以使用以下任一方式预防此类问题:

  • 在您的ESP配置中关闭点击记录。
    (提示:一般来说这是最简便的解决方式。)
  • 在归因链接中添加标签af_esp=true,从而通过af_dp参数中指定的URI scheme强制应用打开。该方案适用于已安装相关应用的用户。
  • 确保与您合作的ESP支持AppsFlyer的应用打开和深度链接解决方案(尤其是通过Universal Link实现的方案)。了解详情

如何让用户跳转到其所在国家/地区的应用商店?

OneLink会根据用户的IP地址让其跳转到对应的国家/地区应用商店。

OneLink链接为什么没有让用户跳转到指定的网页?

请检查您是否在AppsFlyer中启用了跳转白名单。如果您启用了该功能,就必须对跳转网页的URL域名或子域名加白。详情请见跳转白名单。

为什么会出现报错“您要查找的应用不可用”?

如果链接未跳转到Google Play,并出现“您要查找的应用不可用”(App you are looking for is unavailable)的报错,可能是因为发生了下列情况:

  • 您的应用目前尚未在Google Play正式上架,处于待批状态(Pending)。为了避免发生上述问题,请将链接的跳转终点设置为网址,而非Google Play。后续应用获批上架后再将跳转终点改为Google Play。请在相关链接的模板页面中更改这些配置。
  • 如果您的应用仅在第三方应用商店上架,该应用在AppsFlyer中设置的Google Play上架状态可能有误,从而导致了上述问题。请进入“我的应用”页面,并在相关应用的配置中将其Google Play上架状态设置为“在第三方应用商店上架”

能否在现有链接中手动切换品牌域名和其OneLink子域名?

可以,但必须先确保品牌域名和其OneLink子域名之间有正确的映射。详情请见在AppsFlyer后台设置品牌域名的说明文档。

示例:
OneLink子域名:demo.onelink.me
模板ID:A1r4
映射到demo.onelink.me子域名的品牌域名为:

  • app.simulatorapp.com
  • click.simulatorapp.com

您在OneLink面板中创建了以下品牌链接:
app.simulatorapp.com/A1r4/simulationlink
您可以使用其他品牌域名链接或OneLink子域名链接来替换上面这条的品牌链接。
以下链接的功能是以完全一致的,且在任何平台中的效果都一样:

  • app.simulatorapp.com/A1r4/simulationlink
  • demo.onelink.me/A1r4/simulationlink
  • click.simulatorapp.com/A1r4/simulationlink

OneLink参数常见问题答疑

OneLink自定义链接中有哪些必要字段?

只有媒体渠道(pid)是必须配置的参数。

可否在短链后拼接参数?

可以,您可以在短链后添加任何参数。

重要提示!短链后拼接的参数无法覆盖该链接中已配置的参数。

 示例

  • 假设您创建了以下OneLink自定义链接:
    • 长链:https://onelink-sim.onelink.me/Il2C?pid=training&c=peaches
    • 短链:https://onelink-sim.onelink.me/Il2C/70e6d165
  • 您在短链后添加以下参数:https://onelink-sim.onelink.me/Il2C/70e6d165?c=bananas&af_adset=fruits
  • 短链后添加的af_adset=fruits参数可正常生效,用于归因。但c=bananas参数则无法生效,因为长链中已经存在c参数。

自定义媒体渠道的命名有何限制?

您可以使用任何名称命名您的自有媒体。但是建议您不要使用organic来命名自定义媒体渠道,因为这会影响归因数据的可靠性。

如果您在付费媒体中使用OneLink:

  • 请在OneLink自定义链接的媒体渠道参数中使用对接渠道专用的PID值(以 _int结尾)。切勿以googleadwordsfacebook等SRN的名称来命名您的自定义媒体渠道,否则会影响归因数据的准确性。
  • 对于您在OneLink模板中配置的所有应用,请确保该渠道已与AppsFlyer对接并且处于活跃状态(即“启用该渠道”开关已打开)。

OneLink中可以添加哪些归因参数?

您可以在OneLink中添加各种归因参数,帮助您对归因数据进行深入剖析。 

归因参数 描述 链接中的参数名称
广告系列 设置广告系列名称后可以比较自有媒体上不同广告系列的投放指标 C
Adset 设置广告组名称后可以比较自有媒体中同一个广告系列下不同广告组的投放指标 af_adset
广告名称

设置广告名称后可以比较自有媒体中同一个广告组/广告系列下不同广告的投放指标

af_ad
渠道

设置流量入口后可以比较自有媒体下多个流量入口的投放指标

示例:假设您同时使用两家SMS服务商发送SMS短信广告,可以使用流量入口参数来区分这两家服务商,然后比较两者的转化率。

af_channel
可配置参数

AppsFlyer提供5个可配置参数,您可以在其中添加自定义值,用于数据分析。

请注意:AppsFlyer会对这些参数进行解析,并将解析后的结果呈现在原始数据报告中,用于数据汇总或筛选。

af_sub1、af_sub2、af_sub3、af_sub4、af_sub5

自定义参数

与可配置参数类似,您可以使用任意参数名和参数值来配置字段。

但与可配置参数不同,AppsFlyer不会在原始数据中解析自定义参数,这些参数仅呈现在原始数据报告中的original url一列中。

自定义
(广告主自行配置)

详情请见AppsFlyer的归因链接结构和参数

添加到OneLink自定义链接中的自定义参数是否能通过原始数据中拉取?

可以,自定义参数会呈现在原始数据中的original url一列,但是不会单独分列显示。

如果您需要解析后的数据,请使用可配置参数af_sub1-5,这些参数在原始数据报告中会单独分列显示。 

参数名称区分大小写吗?

区分。请确保您的参数名称和参数值中仅包含小写字母。如果参数名称或参数值中带有大写字母或大小写不一致,会在面板和原始数据中造成数据误差和差异。

对接渠道的常见问题解答

OneLink能否在社交应用(非付费渠道)中使用?

如果您在社交应用的非付费帖子中投放广告,但无法根据受众群体的设备进行定向投放,您可以使用OneLink来解决这一问题。

但是部分应用针对iOS的Universal Link设置了一定的限制,使得OneLink的设备识别、跳转、归因、深度链接等基本功能的实现变得更加复杂。某些情况下,您可能需要通过社交应用落地页或URI scheme来为用户实现跳转或深度链接。

下表总结了目前常见的社交应用对OneLink的支持情况:

社交应用 未安装广告主应用的安卓用户 安卓深度链接 未安装广告主应用的iOS用户 iOS深度链接
Facebook (包括Boosted Posts) ✓**†  ✓** ✓* 
Facebook Messenger ✓**†  ✓**  ✓* 
Snapchat †  ✓*  ✓* 
Instagram †  ✓* 
LinkedIn ✓** ✓*
Reddit - - - -
Slack ✓*  ✓* 
X(前身为Twitter) ✓*  ✓* 
微信 †  †  ✓* ✓*† 
WhatsApp

* 需要设置URI scheme或社交应用落地页。请注意:在Facebook和Facebook Messenger中,如果您同时设置了URI scheme和社交应用落地页,界面不会显示落地页。

** 必须配有URI scheme。

界面可能会显示弹窗,让用户在外部浏览器中打开链接。

† 安卓社交应用的Webview深度链接跳转有一定限制。详情请见此文档

能否在广告平台(付费渠道)中使用OneLink?

可以,但OneLink主要用于自有媒体,而非广告平台。 这是因为广告平台通常在流量侧应用中投放广告(也就是说,他们掌握用户的操作平台、设备ID等信息),因此您只需针对不同的应用和操作平台配置归因链接即可,无需使用OneLink。 但如果广告平台无法预判用户的操作平台(比如通过广告平台投放邮件或SMS广告时),就需要使用OneLink解决此问题。

 注意事项!

通过OneLink在广告平台中进行投放时,必须使用OneLink长链。

请按以下方式设置广告平台的OneLink:

正确无误地将适用于安卓和iOS的所有参数添加到OneLink自定义链接后,用户点击该链接就能跳转到对应的平台,且用户激活应用后,必要参数会通过回传发送到广告平台。

 示例

https://greatapp.onelink.me/3287867539?pid=network_int&c=email&
idfa{$IDFA}&gaid={$GAID}&clickid=$SITEID&
af_sub1=[pixel_code]&af_sub2=[creative]

广告平台根据客户端设备的操作平台选取IDFA或GAID。

如何解决社交媒体应用中的iOS应用打开问题?

Facebook等社交媒体应用在部分情况下会阻止iOS的Universal Link完成应用打开。建议您使用社交应用落地页来解决此类应用打开问题。

如果您不想使用社交媒体落地页,也可以配置一个URI scheme作为备用方案。但请注意以下事项:

  • 将URI scheme作为Universal Link的备用方案时,其功能性会受到iOS相关限制的影响。
  • 对于大部分浏览器(包括Safari),都必须在URL中添加 af_force_deeplink=true参数,才能将URI scheme作为备用方式打开应用。另请参考此文档了解详情。

能否在Instagram上使用OneLink?

可以,但请务必注意一下限制:

  • Instagram对于帖子文案的渲染方式会使得帖子标题中的链接无法点击。
  • Instagram支持安卓应用的调起和深度链接,没有特别需要注意的事项。但该平台不支持iOS应用的调起和深度链接。如需解决此问题,您可以使用以下任一方案:

    • 推荐:配置一个社交应用落地页。Clustered Poster和ShowAndTell模板最适合Insta上的帖子。另外,还建议您同时在的OneLink模板中设置一个URI scheme。
    • 在Instagram上投放OneLink时使用URI scheme和强制深度链接。在Instagram上的OneLink中使用af_force_deeplink=true时请务必注意以下链路:
      用户是否已激活应用 链接中是否带有af_force_deeplink=true? 结果
      点击后打开应用商店页面
      点击后打开应用商店页面
      点击后打开应用
      点击后打开应用商店页面

能否使用OneLink在微信上实现跳转?

微信会覆盖安卓和iOS的深度链接,并让用户跳转到网页。用户必须在该网页中点击选项按钮,并选择“在浏览器中打开该页面”。这就会干扰用户体验的连贯性,致使用户脱离转化漏斗。

为了克服这个问题,OneLink会识别出微信中发生的点击,并打开一个专用的落地页,引导用户点击选项按钮并选择在浏览器中打开。完成该操作后,界面就会打开OneLink模板中设置的跳转链接页面。

WeChat_a.jpg

如果用户将微信的语言设置为中文,OneLink会生成本地化版的落地页:

WeChat_b.jpg

为何已安装应用的安卓用户在Facebook WebView上点击链接后,跳转到了网页,而没有进入应用?

Facebook上的广告通常支持应用调起和深度链接。但如果出现以下情况,Facebook就不支持现有用户通过OneLink URL打开应用。这时,所有用户(包括已安装应用的现有用户)都会跳转到OneLink模板中设定的URL,或af_android_urlaf_raf_custom_android_url参数中指定的地址

  • 用户使用安卓移动端设备。
  • 用户在Facebook应用中点击链接。
  • 链接所指的HTML页面设置为在Facebook WebView中打开(移动端网站或社交应用落地页)。
  • HTML页面中的链接同时包含af_dp参数(带有URI scheme)和URL跳转设置(通过OneLink模板、af_android_urlaf_raf_custom_android_url参数设置)。

有关测试的常见问题解答

如何对社交应用落地页进行A/B测试?

在社交媒体应用中投放OneLink时,您可以使用社交应用落地页为用户打造无缝衔接的应用间跳转。一般情况下,在转化漏斗中添加额外的步骤会降低转化率。但在该场景中,如果没有落地页,用户链路就会出现断裂,导致转化率低靡。

如果您还不确定社交应用落地页是否确实有必要,可以先测试一下。

以有/无社交应用落地页为变量,对社交媒体应用中的自定义链接进行A/B测试

请按以下步骤对社交应用落地页进行A/B测试:

  1. 创建一条OneLink链接(命名为Link1),用于社交媒体应用中的投放,且不为该链接配置社交应用落地页。
  2. 添加af_adset归因参数。
  3. 添加af_ad归因参数,将参数值设为“no lp”。 
  4. 在社交媒体应用以外的环境中测试Link1,确认该链接确实可正常生效并打开您的应用。
  5. 创建Link1的副本,并将其命名为Link2。
  6. af_ad归因参数的值更改为“using lp”。 
  7. 仅为Link2创建社交媒体落地页
  8. 同一个社交媒体应用中使用Link1和Link2分别发2个贴子。
    这里可以忽视两个链接之间的点击量差异,重点关注每个链接最终的转化率。
  9. 产生足够流量后,查看A/B测试的结果。
    1. 进入AppsFlyer总览面板,向下滚动到汇总效果报告表。
    2. Link1和Link2具有相同的媒体渠道、广告系列和广告组名称,因此需要切入到广告组维度查看数据。
    3. 对比用户点击Link1和Link2后的转化率(以及其他指标)。

能否避开应用选择对话框?

如果您在测试OneLink时看到要求您选择应用的对话框,请务必选择给应用签名,而非调试应用。您给应用签名时使用的证书就是您为App Link配置OneLink时用来生成SHA256数字指纹的证书。

深度链接常见问题解答

推荐使用哪种深度链接方案?

建议您的开发人员使用Unified Deep Linking(UDL)方案来实现深度链接功能。详情请见深度链接指南

iOS的Universal Link和安卓的App Link是用于调起应用的方法,不会为用户实现深度链接(即让用户进入应用内的具体页面)。URI scheme可以打开应用并进行深度链接(通过af_dp自定义链接参数实现),但建议您仅将该方法用于应用调起。该方法最主要的用途是作为Universal Link和App Link的备用方案,以及为6.0版本以前的安卓用户打开应用。

通过上述任一方法打开应用时,AppsFlyer SDK会上报自定义归因链接中deep_link_value参数的值。这个值需要通过开发人员配置的UDL方式来传递。

能否使用URI scheme(af_dp参数)实现深度链接?

可以,但不建议这样操作。最理想的方法是使用deep_link_value来实现深度链接,并将URI scheme作为应用打开的备用方案,不带有通过af_dp参数实现深度链接功能。但如果您已经设置了深度链接的URI scheme,并在其中添加了其他的URI路径参数(如greatapp://param1/param2),也无需更改现有的配置或代码;该URI scheme仍可正常生效。

建议您在自定义链接设置页面中添加自定义参数。

与iOS 14相关的常见问题解答

OneLink深度链接在iOS 14中是否能生效?

不论您将广告投放在付费渠道还是自有媒体,通过UDL实现的深度链接对iOS用户的体验没有任何影响。但以历史方式实现的深度链接可能会出现问题。

IDFA或IDFV可用时,AppsFlyer会使用这两种ID进行归因/数据上报。如果IDFA和IDFV都不可用,AppsFlyer会通过概率模型进行归因。从iOS 14.5+开始,概率模型的使用场景仅限于自有媒体、交叉推广和授权用户的网页到应用归因。

OneLink延迟深度链接支持iOS 14吗?

不论您将广告投放在付费渠道还是自有媒体,通过UDL实现的延迟深度链接对iOS用户的体验都没有任何影响。但以历史方式实现的延迟深度链接可能会出现问题。

IDFA或IDFV可用时,AppsFlyer会使用这两种ID进行归因/数据上报。如果IDFA和IDFV都不可用,AppsFlyer会通过概率模型进行归因。从iOS 14.5+开始,概率模型的使用场景仅限于自有媒体、交叉推广和授权用户的网页到应用归因。如果您想要在付费渠道和自有媒体的投放中使用延迟深度链接,建议您使用AppsFlyer的iOS SDK V6.1.0+,以支持ATT授权(如有需要)、缓解归因方面的影响,并缩短响应时间。