定义接入活动所对应的SDK接口

玩法页使用

社媒按钮使用(必须)

权限设置

注意:iOS社媒跳转须配置Info.plist中配置键LSApplicationQueriesSchemes,否则社媒跳转会失败。LSApplicationQueriesSchemes的配置示例如下:

<key>LSApplicationQueriesSchemes</key>
<array>
    <string>sinaweibo</string>
</array>

TurboLink社媒scheme配置列表

打开活动页视图

根视图须使用NavigationController控制导航的app项目(根视图使用TabBar指向NavigationController亦可)
[Campaign loadUrlWithUrl:@""];

配置活动页语言

[Campaign setLangWithLang:@"zh"];

配置导航栏

使用系统导航栏

活动页使用的导航栏默认为自定义导航栏,如果需要使用系统导航栏请进行下面的配置

[CampaignOptions enableNativeNavigation];

配置导航栏样式

配置自定义导航栏样式

UIButton *backBtn = [UIButton new];
[backBtn setTitle:@"返回" forState:UIControlStateNormal];
[backBtn setTitleColor:UIColor.systemBlueColor forState:UIControlStateNormal];
[CampaignOptions setNavigationBarHeightWithHeight:44.f]; //设定导航栏高度
[CampaignOptions setNavigationBarBgColorWithColor:UIColor.whiteColor]; //设定导航栏背景颜色
[CampaignOptions setNavigationBarTitleFontWithFont:[UIFont boldSystemFontOfSize:17.f]]; //设定导航栏标题字体
[CampaignOptions setNavigationBarTitleColorWithColor:UIColor.blackColor]; //设定导航栏标题颜色
[CampaignOptions setNavigationBarLoadingTextWithText:@"Loading..."]; //设定活动页面加载时导航栏显示标题
[CampaignOptions setNavigationBarBackButtonWithButton:backBtn]; //设定导航栏标题返回按钮

玩法页监听

活动页显示/关闭监听

Campaign.linkWillAppearListener = ^(NSData *data) {
    //视图即将显示监听
};
Campaign.linkDidAppearListener = ^(NSData *data) {
    //视图显示完毕监听
};
Campaign.linkWillDisappearListener = ^(NSData *data) {
    //视图即将关闭监听
};
Campaign.linkDidDisappearListener = ^(NSData *data) {
    //视图关闭完毕监听
};

登录回调

活动页面点击需要登录时触发

Campaign.linkLoginListener = ^(NSData *data) {
    //拉起/跳转登录页
};

社媒按钮点击回调

活动页面中点击社媒分享按钮时触发

注意:实现该回调需要自己自定义社媒拉起能力。
Campaign.linkShareListener = ^(LinkShareListener *data) {
    //跳转到指定社媒app
};

listenerShareProperties 结构参考

自定义事件回调

活动页面需要去完成某个自定义事件时触发

Campaign.linkEventlistener = ^(NSData *data) {
    NSLog(@"%@", data.scheme);
};

回调结果(data)说明:

参数必须类型说明
argumentsstring用户点击的事件参数,可以通过订阅该参数,打开相应的App页面
格式: turbolink://[事件ID]:[事件KEY]
schemestring用户点击的事件ID
campaignUrlstring活动URL, 可以在打开并完成事件后,Webview跳转该地址来返回活动页

点击事件埋点回调

活动页面点击页面按钮时触发

Campaign.linkPointsListener = ^(NSData *data) {
 
};

埋点监听位置说明

组件跳转监听埋点回调

针对在活动内呈现的组件,有时候我们期望用户点击进入到App内的某个模块。需要使用到该监听。 如:用户中奖后,希望用户点击”去使用”就跳转到奖品使用界面。 支持:奖品、自由组件

活动页面点击需要登录时触发

Campaign.linkRedirectListener = ^(NSData *data) {
    //跳转到使用奖品页/自由组件目标页
};

获取活动详情

通过活动id、活动链接id或者活动页地址获取到对应的活动信息

// 根据安装/打开事件返回的链接id查找
[Campaign infoWithLinkHash:@"hashId" complation:^(CampaignInfoModel * data, NSError * error) {
 
}];
// 根据活动id查找
[Campaign infoWithCampaignId:@"campaignId" complation:^(CampaignInfoModel * data, NSError * error) {
 
}];
// 根据活动地址查找
[Campaign infoWithUrl:@"https://campaign-url" complation:^(CampaignInfoModel * data, NSError * error) {
 
}];

启用/关闭延迟打开活动页

//开启延迟
[Campaign enableDelayAutoCampaign];
//关闭延迟
[Campaign disableDelayAutoCampaign];
//打开延迟的页面
[Campaign delayAutoCampaignShow];