Adobe Analytics (Data Connector)

🚧

Data Connector Update

On August 1, 2021, Adobe will no longer support the Data Connectors. To support these changes, Branch has built out a new integration called Adobe Analytics (Processing Rules).

If you are currently using this integration and are satisfied with the data being sent from Branch to Adobe Analytics, then no action is needed; however, if you would like to configure the data manually, you may migrate to the new Processing Rules Integration.

概述

只需按一下键,便可以将 Branch 数据发送到 Adobe Analytics 操作后台 (Dashboard),以帮助您了解 Branch 作为获客途径的功能。

它是如何工作的?

将Branch SDK集成到应用后,Branch可以检测到哪些链接导致安装,重新打开和用户'操作。启用此集成并提供您的Adobe Analytics信息将导致Branch通过服务器到服务器集成自动将引用的事件转发到Adobe Analytics。

Branch 发送什么事件?

Branch will send referred installs and opens, reinstalls, as well as any custom and commerce events you track with Branch. Non-referred events, clicks, web session starts, and pageviews will be excluded. Branch also sends all the analytics tags that are attached to the link that drove the referred event. This will allow you to analyze which campaigns, channels, etc. are helping you acquire and engage users.

它是什么样子的?

Branch事件将通过Reports > Custom Conversion > Branch eVar出现在Adobe Analytics仪表板上。请注意,一旦通过Adobe Analytics仪表板启用了Branch数据连接器,它将自动出现。

您'会灵活地分析需要在Adobe分析平台,为数据发送Branch在Adobe Analytics(分析)映射到一个顶级EVAR数据。此eVar包含广告系列,渠道,目标,事件名称和操作属性,它们是您的分析标记。

图片图片

14981498

Branch事件与Adobe Analytics事件类似,因为它们可用于构建自定义报告并在各个页面和仪表板上进行跟踪。但是,与正常事件不同,Branch事件首先包含有关用户如何最终进入您的应用的有价值的信息。

1. 完整的数据集成先决条件

🚧

先决条件

BRANCH

Adobe Analytics

2.在 Adobe 中激活 Branch 数据连接器

  1. 在Adobe Analytics仪表板的Admin 选项卡下,找到Data Connectors

图片图片

  1. 点击+Add New ,搜索" Branch, " ,然后点击Activate

图片图片

3.配置 Branch 数据连接器

整合设定

当您激活数据连接器时,这些将自动配置。

变量映射

将您的 Branch 事件映射到您选择的 eVar。在下面的示例中,它将映射到 Custom eVar 1 ,重命名为 SiteCatalyst 指标 Branch

图片图片

数据设定

Branch 已为要提取的 Branch 数据提供了默认分类规则集。如下将 Branch 分析数据映射到 Adobe 分类。您可以根据需要更改此分类规则集,但不需要进行编辑。我们还包括 Branch 标签,因此您可以创建一个新规则,以进一步细分您的分析数据以实现高级可见性。

Adobe 分类Branch机构分析标签
SourceChannel
CampaignCampaign
MediumFeature
ActionBranch Event Name
Action PropertyBranch Tags

图片图片

评测总结

最后,查看集成,滚动到屏幕底部,然后点击 Activate Now 以启用集成。

图片图片

3.配置 Branch 仪表板

检索您的 Adobe Analytics 信息

前往 Branch 之前,请在 Adobe Analytics 操作后台 (Dashboard)中前往 Mobile Marketing UI 并找到您的应用。

Manage App Setting -> SDK Analytics Options ,找到以下数据:

Branch 字段Adobe 字段值
ProtocolUse HTTPS Check Box (if checked, select HTTPS)
Analytics Server DomainTracking Server
Omniture iOS/Android Server KeyReport Suite ID for that app
TimestampOffline Tracking

对于 Analytics Server Domain ,请不要包括 httphttps 。如果您为此设置的值为 http://test.com ,则只需输入 test.com 。这意味着没有多余的 slashes,也无需协议。

输入 Adobe Analytics 信息

  1. 在 Branch 操作后台 (Dashboard)(dashboard.branch.io)上,前往 Data Integrations page
  2. 找到 Adobe Analytics 并选择 Enable
  • 如果您尚未输入帐单信息,请立即输入。
  1. 输入您的 Adobe Analytics 信息,然后点击 Save

4.将 Adobe ID 传递到 Branch

🚧

Adobe IDs

This step is not required if the Branch SDK is implemented using Adobe Launch
If this step is not completed, events Branch sends to your Adobe Report Suite will not reliably appear, and will not connect to other data already tracked by Adobe Analytics

你'将需要通过与Adobe配置的所有用户ID,到科软件开发工具包(有三个可能的Adobe ID的这种整合可以跟踪)。首先,通过在Branch SDK上调用初始化会话之前,通过在Branch SDK上调用setRequestMetadataKey (iOS)或.setRequestMetadata (Android),找出要使用的ID,然后通过在Branch SDK上调用{2} (iOS)或{3} (Android)将值传递给Branch。

例如,如果您的 Adobe 集成使用 Marketing Cloud 访客 ID 或 Experience Cloud ID,请从 Adobe SDK 中检索 ID,然后使用名为 $marketing_cloud_visitor_id 的 Key 将其传递给Branch SDK。以下所有 ID 类型的示例代码片段:

Marketing Cloud 访问者 ID /体验 Cloud ID

使用 $marketing_cloud_visitor_id 键发送到 Branch Key。发送给 Adobe 的mid 。检查是否存在云 ID,如果不存在,则在回调中初始化 Branch 以利用返回的云 ID,否则在 Adobe 回调之外初始化 Branch。最佳实践是存储云 ID,然后再用于后续应用启动

  • iOS-Objective C
//Inside *didFinishLaunchingWithOptions*
Branch *branch = [Branch getInstance];
            if (experienceCloudId == nil) {
                [ACPIdentity getExperienceCloudId:^(NSString * _Nullable retrievedCloudId) {    
                    [branch setRequestMetadataKey:@"$marketing_cloud_visitor_id" value:[retrievedCloudId]];
                    ...
                    [branch initSessionWithLaunchOptions...];  
                }];
            } else {
                [branch setRequestMetadataKey:@"$marketing_cloud_visitor_id" value:[experienceCloudId]];
                ...
                [branch initSessionWithLaunchOptions...];  
                        }
  • iOS-Swift
//Inside *didFinishLaunchingWithOptions*
            if let branch = Branch.getInstance() {
                if experienceCloudId == nil { 
                    ACPIdentity.getExperienceCloudId { (retrievedCloudId) in 
                        branch.setRequestMetadataKey("$marketing_cloud_visitor_id", value:retrievedCloudId)
                        ...
                        branch.initSession(...)
                    }  
                } else {
                    branch.setRequestMetadataKey("$marketing_cloud_visitor_id", value:experienceCloudId)
                    ...
                    branch.initSession(...)
                }
            }
  • Android
//Before you initialize the session.
            if experienceCloudId == null {
                Identity.getExperienceCloudId(new AdobeCallback<String>() {    
                    @Override    
                    public void call(String id) {  
                        Branch branch = Branch.getInstance();      
                        branch.setRequestMetadata("$marketing_cloud_visitor_id", id);
                        ...  
                        branch.sessionBuilder(this)…init();
                    }
                });
            } else {
                Branch branch = Branch.getInstance();      
                branch.setRequestMetadata("$marketing_cloud_visitor_id", experienceCloudId);
                ...  
                branch.sessionBuilder(this)…init();
            }

如果您'担心额外的延迟,则可以在启动时有条件地调用对ExpectDelayedSessionInitialization的调用。


            LauncherActivity.onStart() {
                    ...
                    Branch.expectDelayedSessionInitialization()
            }

                        asyncOperationCallback() {
                            Branch.sessionBuilder(activity).withCallback(callback)...init();
                        }

Analytics(分析)自定义访问者 ID

使用 $analytics_visitor_id key 发送到 Branch 值。发送给 Adobe 的值是 vid 。这是可以使用 Adobe SDK 设置的自定义用户 ID。

  • iOS-Objective C
//Inside *didFinishLaunchingWithOptions*
//Setting the Identifier with Adobe
[ADBMobile setUserIdentifier:@"Whipple"];
//Passing the Identifier to Branch
Branch *branch = [Branch getInstance];
[branch setRequestMetadataKey:@"$analytics_visitor_id" value:[ADBMobile userIdentifier]]
...
[branch initSessionWithLaunchOptions...]
  • iOS-Swift
//Inside *didFinishLaunchingWithOptions*
//Setting the Identifier with Adobe
ADBMobile.setUserIdentifier("Whipple")
//Passing the Identifier to Branch
if let branch = Branch.getInstance() {
    branch.setRequestMetadataKey("$analytics_visitor_id", value:ADBMobile.userIdentifier())
    ...
    branch.initSession(...);
}
  • Android
//Before you initialize the session.
//Setting the Identifier with Adobe
Config.setUserIdentifier(""Whipple"");
//Passing the Identifier to Branch
Branch branch = Branch.getInstance();
Branch.getInstance().setRequestMetadata(""$analytics_visitor_id"", Config.getUserIdentifier());
...
Branch.sessionBuilder(this)...init();

Analytics(分析)访问者 ID

使用 $adobe_visitor_id key 将值发送到 Branch。发送给 Adobe 的值是 aid

  • iOS-Objective C
//Inside *didFinishLaunchingWithOptions*
Branch *branch = [Branch getInstance];
[branch setRequestMetadataKey:@"$adobe_visitor_id" value:[ADBMobile trackingIdentifier]];
...
[branch initSessionWithLaunchOptions...]
  • iOS-Swift
//Inside *didFinishLaunchingWithOptions*
if let branch = Branch.getInstance() {
    branch.setRequestMetadataKey("$adobe_visitor_id", value:ADBMobile.trackingIdentifier());
    ...
    branch.initSession(...);
}
  • Android
//Before you initialize the session.
Branch branch = Branch.getInstance();
branch.setRequestMetadata(""$adobe_visitor_id"", Analytics.getTrackingIdentifier());
...
Branch.sessionBuilder(this)...init();

高级

Branch 发送到 Adobe Analytics 的内容

Branch 从 Adobe 上下文数据中的 Branch Link 数据发送以下值:

Adobe 分类Branch机构分析标签例如
SourceChannel我们的网站
CampaignCampaignJourneys 测试 Campaign
MediumFeatureJourneys(网站向App引流解决方案)
ActionBranch Event NameInstall
Action PropertyBranch Tagstag=bar&tag2=1234
CustomBranch Custom Datakey=value

如果创建 Quick Link(快速链接)并指定分析,则这些分析将显示在 Adobe Analytics 报告套件中。

支持中心

问题排查时可以采取一些常见的策略。

模拟事件后未显示数据

使用 Adobe Analytics 操作后台 (Dashboard),最多可能需要2个小时才能显示数据。我们建议您模拟一个测试环节10-15事件,并验证它们显示了两个小时后,使反馈是透明的和明显的。

如果您没有在 Adobe 操作后台 (Dashboard)中看到添加到 Branch 事件的 Adobe ID,则可以在Branch SDK 上调用 setDebug ,然后检查 v1/open 应用内请求,以确认 ID 已发送。您想在这个请求负载中寻找的 Key 可能是$adobe_visitor_id$marketing_cloud_visitor_id$analytics_visitor_id

什么是上下文数据,Branch 在哪里将其提供给 Adobe?

当向 Adobe 发送服务器到服务器间调用时,上下文数据 (Context Data)是服务器调用中介于 &c.&.c 之间的部分。无法通过客户端看到此调用(例如,无法通过 Charles Proxy 使用此调用)。要查看 Branch 服务器的详细呼叫,请联系您的 Branch 客户经理。通常,可以在 Adobe 操作后台 (Dashboard)中可视化上下文数据中发送的值,而上下文数据之外的值则不适用。像用户身份值等值(例如 vidmidaid )将被发送到 Adobe,但由于不包括上下文数据,因此其无法在 Adobe Report Suite 中可视化。但是,它们的格式已正确设置,以便 Adobe在 Adobe 中记录该用户的事件。