回发功能的定义和源代码示例。
此示例仅供参考之用。ADBMobileConfig.json
文件应在 Adobe Mobile 用户界面中配置,而不应手动修改。在启用了远程消息配置时,手动编辑的配置文件可能会很危险。
"messages": [
{
"messageId": "79ae37c9-89b9-465e-af7f-d3351771f1dc",
"template": "callback",
"payload": {
"templateurl": "https://my.server.com/?user={user.name}&zip={user.zip}&c16={%sdkver%}&c27=cln,{a.PrevSessionLength}",
"templatebody": "c2RrdmVyPXslc2RrdmVyJX0mY2I9eyVjYWNoZWJ1c3QlfSZjbGllbnRJZD17bi5jbGllbnQuaWR9JnRzPXsldGltZXN0YW1wVSV9JnRzej17JXRpbWVzdGFtcFolfQ==",
"contenttype": "application/x-www-form-urlencoded",
"timeout": 4
},
"showOffline": true,
"showRule": "always",
"endDate": 2524730400,
"startDate": 0,
"audiences": [],
"triggers": [
{
"key": "pageName",
"matches": "eq",
"values": [
"MainMenu"
]
}
]
}
]
NSDictionary *contextData = @{@"user.name":@"bob", @"user.zip":@"90210"};
[ADBMobile trackState:@"MainMenu" data:contextData];
由于其状态为 "MainMenu"
,因此该跟踪调用会触发上述回发消息。URL 会将所有的模板变量替换为来自点击的值。假定用户上一个会话的时长为 132 秒,并且该用户使用的是 iOS SDK 版本 4.6.0,则生成的 URL 如下所示:
https://my.server.com/?user=bob&zip=90210&c16=4.6.0-iOS&c27=cln,132