Adobe启动iOS SDK

将Branch深度链接接的功能和属性添加到Adobe Marketing Cloud应用程序。借助Branch 的链接平台,移动开发人员和营销人员可以通过世界一流的深度链接接和归因来发展其移动业务。

特征

  1. 使用Adobe SDK跟踪的所有事件将自动发送到Branch,而无需进行任何其他工作
  2. 所有核心Branch功能均可访问

要求

  • iOS 10
  • Adobe核心平台

不需要Branch SDK

由于Adobe Branch扩展是自动包含Branch SDK的子依赖项的包装,因此您不需要-我们也不建议在应用中单独实现Branch SDK。

示例应用

可以在AdobeBranchExtension-iOS存储库中的Examples/AdobeBranchExample
项目中找到示例应用程序。

安装&使用

请注意,Adobe Experience Platform(AEP)SDK和AdobeMobileLibrary不能共存于同一项目中。

这里简要概述了如何在您的应用程序中使用AdobeBranchExtension:

  1. 您将需要配置您的应用程序,并在Branch指标仪表板获得一个BranchAPI密钥。您可以在此处的Branch文档中阅读有关配置仪表板的更多信息。
  2. 对于深度链接接,您需要来添加通用链接的关联域,如此处Branch文档中所述:
  3. 还将应用程序URI方案和Branch键添加到应用程序的plist文件中,以进行深度链接接。
  4. 在Adobe仪表板中,激活Branch并将您的Branch键添加到您的app的配置中。
    图像
  5. 将AdobeBranchExtension添加到您的应用的Podfile。
    pod 'AdobeBranchExtension'
  6. 运行pod installpod update 会安装扩展的最新版本。
  7. ACPCore in didFinishLaunchingWithOptions注册BranchAdobeBranchExtension
#import <AdobeBranchExtension/AdobeBranchExtension.h>
    ...
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    ...
    [ACPCore registerExtension:[AdobeBranchExtension class] error:&error]
     ...
    return YES; // Important! If you return `NO` iOS will not handle deep linking as expected.
}
  1. 如下所示,在AppDelegate类中的三个位置添加分支深层链接路由器和接收器。您可以在此文档看到一些有关深度链接路由的最佳实践。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    // Up here you register your AdobeBranchExtension with ACPCore

    // Handle your Branch deep link routing in the callback
    [AdobeBranchExtension initSessionWithLaunchOptions:launchOptions
                            andRegisterDeepLinkHandler:^(NSDictionary * _Nullable params, NSError * _Nullable error) {
        if (!error && params && [params[@"+clicked_branch_link"] boolValue]) {

//            EXAMPLE ROUTING CODE
//            Product*product = Product.new;
//            product.name        = params[@"$og_title"];
//            product.summary     = params[@"$og_description"];
//            product.URL         = params[@"$canonical_url"];
//            product.imageName   = params[@"image_name];
//            product.imageURL    = params[@"$og_image_url"];
//
//            ProductViewController *pvc = [[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"ProductViewController"];
//            pvc.title = product.name;
//            pvc.product = product;
//            [((UINavigationController *)self.window.rootViewController) pushViewController:pvc animated:YES];

        }
    }];
}

- (BOOL)application:(UIApplication *)application
        openURL:(NSURL *)url
        options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
    [AdobeBranchExtension application:application openURL:url options:options];
    return YES;
}

- (BOOL)application:(UIApplication *)application
        continueUserActivity:(NSUserActivity *)userActivity
        restorationHandler:(void(^)(NSArray<id<UIUserActivityRestoring>> * __nullable restorableObjects))restorationHandler {
    [AdobeBranchExtension application:application continueUserActivity:userActivity];
    return YES;
}

实现Branch功能

'添加AdobeBranchExtension和Branch后,您始终可以直接使用Branch功能。您可以在iOS的分支文档中了解有关使用分支功能的信息。](/ developers-hub / docs / ios-sdk-overview)

自动:跟踪动作和状态

当您在Adobe Launch中跟踪动作和状态时,动作和状态消息也会发送到Branch,并显示在
Branch仪表板上。这使您可以在应用程序'的操作中跟踪深层链接活动和病毒共享的有效性。

这里是通过Adobe Launch跟踪应用程序状态的示例:

[ACPCore trackState:@"VIEW" data:@{
@"name":        self.product.name,
@"revenue":     @"200.0",
@"currency":    @"USD"
}];

2个月前更新

Adobe启动iOS SDK


建议的编辑仅限于API参考页

您只能建议对Markdown正文内容进行修改,而不能建议对API规范进行修改。