로딩중입니다
[iOS] 定向弹窗通知 : iOS
8/25/2015 2:54:52 PM

LiveOperation 定向弹窗通知服务

LiveOps 弹窗通知服务,当需要对用户发布通知时,可以使用弹窗形式的通知栏显示需要告知的内容。

通过弹窗通知功能可以向用户曝光活动内容和新增功能。


注意事项
  1. LiveOperation add-on 之前,必须集成 IGAW 共同集成文件。[IGAW 共同集成 : iOS]
  2. 为集成 LiveOperation 须将 LiveOps~*.framework 文件添加至 Xcode Project。[SDK 安装 : iOS]



安装 LiveOperation 定向弹窗通知

有2种方式进行安装 LiveOps.framework。


  • 使用 CocoaPods 

Podfile 内容以如下。

platform :ios, '8.0'
pod 'LiveOps'


  • 直接安装

添加 LiveOps.framework 文件后,再附加如下的 Dependencies。

添加 Bundle

在 LiveOps.framework 里面包含的 LiveOps.bundle 需要添加。



弹窗通知初始化 API

为使用弹窗通知服务,需按照以下阶段进行初始化。

建议在应用启动的时刻调用以下初始化 API。 

 

输入用户识别码

用户识别码是用于判断用户是否完成广告活动,是否给予奖励而使用的信息。

用户识别码需在输入用户优惠券号码前进行设置。


    注意事项

  1. 每一个用户只有一个固定的用户识别码,不可使用变量。
  2. 不可包含个人信息 (有邮箱、姓名、电话、可识别的 ID 等)
  3. 如需使用中文、韩文、空白等字符串时,需对 URL 进行编码。
  4. 调用 getPopups API 之前进行设置。

请留意以上注意事项,输入用户识别码。

[IgaworksCore setUserId:@"user10001"];


弹窗通知数据加载 

调用 getPopups api,在 LiveOps 管理页面中加载设置的弹窗通知数据。

加载数据之前必须这只用户识别码。

注意事项 

  1. 没有输入用户识别码时,不可加载弹窗通知数据。
  2. 即使在 LiveOps 弹窗通知管理页面中添加新的通知,如果没有加载数据的话,不可在 SDK 中确认现在通知的信息。 

 请留意以上注意事项,加载弹窗通知数据。

[LiveOpsPopup getPopups:^{
    //存在弹窗通知数据时调用 Code Block。
    NSLog(@"Popup Resource Loading Success");
}];



弹窗通知 API

曝光弹窗通知

调用 showPopups api,在想要曝光弹窗通知的时刻上曝光弹窗形式的通知。

通知中显示的内容,需在弹窗通知管理页面中设置信息。

以下为点击 showPopupNotiBtn 按钮,曝光弹窗通知的示例。

#import "ViewController.h"
#import "AppDelegate.h"
#import <IgaworksCore/IgaworksCore.h>
#import <LiveOps/LiveOps.h>

@implementation ViewController

- (IBAction)showNotiPopUpBtnClicked:(UIButton *)sender {
    [LiveOpsPopup showPopups:@"弹窗通知 Space Key"];
}

@end

+ 弹窗通知 Space Key 可以在弹窗通知管理页面中获取。


弹窗通知 Deep Link

使用弹窗通知的 Deep Link 功能,可以通过弹窗执行丰富的动作。

  • Deep Link 可以在弹窗通知管理页面中登录。
  • Deep Link 数据的形式仅支持 Json。


打开 Listener

使用通过 Listener 收到的数据,在打开弹窗链接时执行需要的功能。

[LiveOpsPopup setPopupLinkListener:^(NSString *popupSpaceKey, NSDictionary *customData) {
	//弹窗中登录 Deep Link 数据通过 customData 传达。
	//如果 Deep Link 不是 JSON 形式的话,custonData 通过 nil 传达。
	
	NSLog(@"popupLink listener called\n\
		deep link json: %@", customData);
}];


关闭 Listener

使用通过 Listener 传达的数据,关闭弹窗时执行需要的功能。

[LiveOpsPopup setPopupCloseListener:^(NSString *popupSpaceKey, NSString *popupCampaignName, NSDictionary *customData, NSUInteger remainPopupNum) {
	//登录在弹窗通知的 Deep Link 数据通过 customData 传达。
	//如果 Deep Link 不是 JSON 形式的话,custonData 通过 nil 传达。

	NSLog(@"popupClose listener called\n\
		popupCampaignName: %@\n\
		deep link json: %@\n\
		remainPopupNum: %lu", popupCampaignName, customData, (unsigned long)remainPopupNum);
}];



强制关闭弹窗通知

使用终止 api 直接处理终止弹窗通知。

// 仅终止现在曝光的弹窗
[LiveOpsPopup destroyPopup];

// 终止现在曝光的弹窗及之后所有的弹窗
[LiveOpsPopup destroyAllPopups];



弹窗通知用户定向

设置用户群,直接选择弹窗通知的发送对象。
为设置用户群直接设定数据。

设置定向数据

为了对指定的用户显示弹窗通知,请自行设定用户数据。
设置的自定义用户数据可以在定向弹窗的管理页面中确认。以下示例是以用户年龄为自定义数据。
//[LiveOpsUser setTargetingData:(NSString*)customUserData withKey:(NSString*)customUserDataKey]
[LiveOpsPush setTargetingData:@16 withKey:@"age"];
customUserData : 为定向输入的用户数据。 
customUserDataKey : 设置自定义用户数据 Key。

呼叫 Targeting 数据

呼叫设置的 Targeting 数据执行需要的动作。
NSNumber* ageNum = [LiveOpsPush getTargetingDataWithKey:@"age"];

同步 Targeting 数据

调用 flush api,将设置的 Targeting 数据同步到 LiveOps 服务器。
[LiveOpsUser flush];