Ibm mobilefirst 使用WLPush为Worklight iOS通知在订阅时传递数据

Ibm mobilefirst 使用WLPush为Worklight iOS通知在订阅时传递数据,ibm-mobilefirst,worklight-adapters,worklight-server,worklight-console,Ibm Mobilefirst,Worklight Adapters,Worklight Server,Worklight Console,我需要在订阅通知时传递数据,因此,我采用了模块_07_04_iOSNativePush应用程序中的示例代码,并将以下代码添加到connect方法(在ViewController.m中): 这不会引发任何错误,但是,当我运行示例PushAdapter代码并使用以下命令添加到适配器时: var usub = 'json:'+JSON.stringify(userSubscription); ... return { result: "Notification sent to user :: " +

我需要在订阅通知时传递数据,因此,我采用了模块_07_04_iOSNativePush应用程序中的示例代码,并将以下代码添加到connect方法(在ViewController.m中):

这不会引发任何错误,但是,当我运行示例PushAdapter代码并使用以下命令添加到适配器时:

var usub = 'json:'+JSON.stringify(userSubscription);
...
return { result: "Notification sent to user :: " + userId + 
  ", wait " + waittime + " before sending another. UserSub:" + usub};
适配器中的结果是:

{
  "isSuccessful": true,
  "result": "Notification sent to user :: worklight, wait 0 before sending another.    
UserSub:json:{\"userId\":\"worklight\",\"state\":{}}"
}
我希望我通过字典在“状态”下传递的变量,对吗?适配器中是否有其他方法获取在[WLPush subscribe]调用中传入的参数


正如您可能知道的,我对Objective C非常陌生,因此,不要假设对subscribe的调用是正确的。另外,我将Worklight Studio 6与Fix Pack 1一起使用。

状态将不包含在subscribe调用期间传递的参数。您需要首先获得设备订阅。设备订阅的选项对象将包含订阅期间传递的参数

例如

var deviceSubscriptions=userSubscription.getDeviceSubscriptions(); var usub='json:'+json.stringify(deviceSubscriptions[0])

请参考以下信息中心链接


这回答了问题的一部分,但是,为什么pushit-WLPushOptions不保存这个?
{
  "isSuccessful": true,
  "result": "Notification sent to user :: worklight, wait 0 before sending another.    
UserSub:json:{\"userId\":\"worklight\",\"state\":{}}"
}