DeepShare iOS集成文档

一、集成SDK

下载SDK(该SDK在数据采集的基础上增加了DeepShare功能)。

注意:

  • 若您之前通过手动导入的方式集成过诸葛SDK,需要您删除并替换新的包含DeepShare的SDK。
  • 若您之前通过pod方式导入SDK,需要在pod文件里把"Zhugeio"删除,重新执行pod install,并且手动导入新的包含DeepShare的SDK。

二、配置*-info.plist文件

添加用户打开APP的URL Scheme

添加一个叫URL types的键值

  1. 添加一个叫URL types的键值。
  2. 点击左边剪头打开列表,可以看到Item 0,一个字典实体。
  3. 点击Item 0新增一行,从下拉列表中选择URL Schemes,敲击键盘回车键完成插入。
  4. 更改所插入URL Schemes的值为DeepShare配置中生成的Scheme。

1. 配置开发者信息

  1. 登录developers.apple.com,点击按钮「Certificate, Identifiers & Profiles」,再点击「Identifiers」。

    image

  2. 确保开启「Associated Domains」,这个按钮在页面下方,如图所示:

    image

2. 配置Xcode

  1. 在Xcode配置中开启「Associated Domains」。

    • 选择相应的target;
    • 点击「Capabilities tab」;
    • 开启Associated Domains;
    • 点击「+」按钮,添加一个Associated Domain,其内容为applinks:zhugeapi.com 完成后,如图所示:

      image

  2. 在Xcode中添加依赖库。

    • 选择相应的target;
    • 选择Build Phrases;
    • 在Link Binary With Libraries中添加SafariServices.framework。

3. 添加以下代码到AppDelegate

// Availability : iOS (9.0 and later)
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray *))restorationHandler 
{
    //此处添加以下代码
    BOOL handledByDeepShare = [Zhuge continueUserActivity:userActivity];
    return handledByDeepShare;
}

4. 添加调用代码

添加处理代码。

// Availability : iOS (9.0 and later)
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary *)options 
{
    //此处添加以下代码
    if([Zhuge handleURL:url]){
        return YES;
    }
    return NO;
}

如果是iOS8和以下版本,请用以下代码:

// Availability : iOS (4.2 to 8.4)
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(nullable NSString *)sourceApplication annotation:(id)annotation {
    //此处添加以下代码
    if([Zhuge handleURL:url]){
        return YES;
    }
    return NO;
}

5.获取场景还原参数

为实现场景还原功能,在AppDelegate的didFinishLaunchingWithOptions方法中添加[zhuge startWithAppKey… …]的调用,并通过Delegate接受返回的启动参数。 LaunchOptions是用来判断App是否是通过URL Scheme进行唤起的。

示例代码如下:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{

    Zhuge *zhuge = [Zhuge sharedInstance];
    [zhuge startWithAppKey:@"此处填写您生成的应用appKey" launchOptions:launchOptions withDelegate:self];
    return YES;

}
- (void)zgOnInappDataReturned:(NSDictionary *)params withError:(NSError *)error 
{
    if (!error) 
    {
        NSLog(@"finished init with params = %@", [params description]);
        NSString *cmdName = [params objectForKey:@"name"];
        goToLinuxCmd(cmdName); //调用应用自己的接口跳转到分享时页面
    } else {
        NSLog(@"init error id: %ld %@",error.code, errorString);
    }
}

6. 自定义did

在iOS集成文档中介绍过诸葛用户追踪ID方案,若您想在使用场景还原功能时自定义用户追踪方案,请将第五节中的[zhuge startWithAppKey… …]替换为下面的代码:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{

    Zhuge *zhuge = [Zhuge sharedInstance];
    [zhuge startWithAppKey:@ "此处填写您生成的应用appKey" andDid:@"did" launchOptions:launchOptions withDelegate:self];

    return YES;

}
©zhugeio.com 京ICP备15049545号           文档更新时间 2018-07-12 19:20:12

results matching ""

    No results matching ""