主题×
适用于 iOS 的 Target 方法
以下是 iOS 库提供的 Adobe Target 方法列表。
SDK 当前支持多个 Adobe Experience Cloud 解决方案,包括 Analytics、Target、Audience Manager 和 Adobe Experience Platform Identity Service。方法将根据解决方案来添加前缀。例如,Target 方法的前缀为
target
。
生命周期量度将作为参数发送至每个 mbox 负载。有关更多信息,请参阅
生命周期量度
。如果您在
didFinishLaunching
委托方法中发送 Target 请求,请在 Target 实施代码前添加
[ADBMobile trackAction:data:]
或
[ADBMobile trackState:data:]
调用。这样,Target 请求将包含完整的生命周期数据。
类引用:ADBTargetLocationRequest
属性
NSString *name; NSString *defaultContent; NSMutableDictionary *parameters;
字符串常量
在为自定义参数设置键时,可以方便地使用以下常量。
NSString *const ADBTargetParameterOrderId; NSString *const ADBTargetParameterOrderTotal; NSString *const ADBTargetParameterProductPurchasedId; NSString *const ADBTargetParameterCategoryId; NSString *const ADBTargetParameterMbox3rdPartyId; NSString *const ADBTargetParameterMboxPageValue; NSString *const ADBTargetParameterMboxPc; NSString *const ADBTargetParameterMboxSessionId; NSString *const ADBTargetParameterMboxHost;
- 如果您使用的是 低于 4.14.0 版本的 SDK,请参阅 输入参数 以了解参数限制。
- 如果您使用的是 4.14.0 版本 或更高版本 的 SDK,请参阅 批量输入参数 以了解参数限制。
方法
- targetLoadRequest:callback向您配置的 Target 服务器发送 request,并返回在块 callback 中生成的选件的字符串值。
- 以下是此方法的语法:
+ (void) targetLoadRequest:(ADBTargetLocationRequest *)request callback:(void (^)(NSString *content))callback;
- 以下是此方法的代码示例:
[ADBMobile targetLoadRequest:myRequest callback:^(NSString *content) { // do something with content }];
- targetLoadRequestWithName:defaultContent:profileParameters:orderParameters:mboxParameters:requestLocationParameters:callback:向您配置的 Target 服务器发送请求,并返回在块回调中生成的选件的字符串值。
- 以下是此方法的语法:
+ (void) targetLoadRequestWithName:(nullable NSString *)name defaultContent:(nullable NSString *)defaultContent profileParameters:(nullable NSDictionary *)profileParameters orderParameters:(nullable NSDictionary *)orderParameters mboxParameters:(nullable NSDictionary *)mboxParameters requestLocationParameters:(nullable NSDictionary *)requestLocationParameters callback:(nullable void (^)(NSString * __nullable content))callback;
- 返回:不适用
- 以下是此方法的参数:
- name要检索的 Target mbox/位置的名称。
- 类型 :NSString*
- defaultContentTarget 服务器不可访问或用户不符合促销活动资格时,在回调中返回的值。
- 类型 :NSString*
- profileParameters该词典中的值将在对 Target 的请求中用于“profileParameters”对象。
- 类型 :NSDictionary*
- orderParameters该词典中的值将在对 Target 的请求中用于“order”对象。
- 类型 :NSDictionary
- mboxParameters该词典中的值将在对 Target 的请求中用于“mboxParameters”对象。
- 类型 :NSDictionary*
- requestLocationParameters该词典中的值将在对 Target 的请求中用于“requestLocation”对象。类型 :NSDictionary*
- callback此方法将通过来自 Target 服务器的选件内容进行调用。如果 Target 服务器不可访问,或者用户不符合促销活动资格,则将返回 defaultContent。 类型 :函数
- 以下是此方法的代码示例:
[ADBMobile targetLoadRequestWithName:@"myHeroBanner" defaultContent:@"defaultHeroBanner.png" profileParameters:@{@"age":@"20-29"} orderParameters:nil mboxParameters:@{@"customParam":@"customValue"} requestLocationParameters:@{@"host":@"my.hostname.com"} callback:^(NSString *content){ // do something with content myImageView.image = [UIImage imageNamed:content]; }];
有关基础 Target API 的更多信息,请参阅 Adobe Target 开发人员 。
- targetLoadRequestWithName:defaultContent:profileParameters:orderParameters:mboxParameters:requestLocationParameters:callback向您配置的 Target 服务器发送 request,并返回在块 callback 中生成的选件的字符串值。
- 以下是此方法的语法:
+ (void) targetLoadRequestWithName:(nullable NSString *)name defaultContent:(nullable NSString *)defaultContent profileParameters:(nullable NSDictionary *)profileParameters orderParameters:(nullable NSDictionary *)orderParameters mboxParameters:(nullable NSDictionary *)mboxParameters callback:(nullable void (^)(NSString * __nullable content))callback;
- 以下是此方法的代码示例:
[ADBMobile targetLoadRequestWithName:@"mboxName" defaultContent:@"defaultContent" profileParameters:{@"profile-parameter-key": @"profile-parameter-value"} orderParameters:@{@"order-parameter-key": @"order-parameter-value"} mboxParameters:@{@"mbox-parameter-key": @"mbox-parameter-value"} callback:^(NSString * content) { //do something with content } }];
- targetCreateOrderConfirmRequestWithName:orderId:orderTotal:productPurchasedId:parameters创建 ADBTargetLocationRequest 。
- 以下是此方法的语法:
+ (ADBTargetLocationRequest *) targetCreateOrderConfirmRequestWithName:(NSString *)name orderId:(NSString *)orderId orderTotal:(NSString *)orderTotal productPurchasedId:(NSString *)productPurchasedId parameters:(NSDictionary *)parameters;
- targetCreateRequestWithName:defaultContent:parameters一个方便使用的构造函数,用于使用给定参数创建 ADBTargetLocationRequest 对象。
- 以下是此方法的语法:
+ (ADBTargetLocationRequest *) targetCreateRequestWithName:(NSString *)name defaultContent:(NSString *)defaultContent parameters:(NSDictionary *)parameters;
- 以下是此方法的代码示例:
ADBTargetLocationRequest *myRequest = [ADBMobile targetCreateRequestWithName:@"heroBanner" defaultContent:@"default.png" parameters:nil];
- targetThirdPartyID返回第三方 ID。
- 以下是此方法的语法:
+ (nullable NSString *) targetThirdPartyID;
- 以下是此方法的代码示例:
NSString *thirdPartyId = [ADBMobile targetThirdPartyID];
- targetSetThirdPartyID设置第三方 ID。
- 以下是此方法的语法:
+ (void) targetSetThirdPartyID:(nullable NSString *)thirdPartyID;
- 以下是此方法的代码示例:
[ADBMobile targetSetThirdPartyID:@"thirdPartyID"];
- targetClearCookies清除应用程序中的任何目标 Cookie。自 SDK 版本 4.10.0 起,Target 不再使用 Cookie。此方法会重置 thirdPartyID 和 sessionID。
- 以下是此方法的语法:
+ (void) targetClearCookies;
- 以下是此方法的代码示例:
[ADBMobile targetClearCookies];
- targetPcID返回 PcID。
- 以下是此方法的语法:
+ (nullable NSString *) targetPcID;
- 以下是此方法的代码示例:
NSString *myTargetPcID = [ADBMobile targetPcID];
- targetSessionID返回 SessionID。
- 以下是此方法的语法:
+ (nullable NSString *) targetPcID;
- 以下是此方法的代码示例:
NSString *myTargetSessionID = [ADBMobile targetSessionID];
示例
// make your request ADBTargetLocationRequest *myRequest = [ADBMobile targetCreateRequestWithName:@"heroBanner" defaultContent:@"default.png" parameters:nil]; // load your request [ADBMobile targetLoadRequest:myRequest callback:^(NSString *content) { // do something with content heroImage.image = [UIImage imageNamed:content]; }];