更新操作系统版本后,IBM Worklight 6.2推送通知问题

时间:2016-08-22 16:11:19

标签: push-notification ibm-mobilefirst

我在worklight 6.2中遇到有关推送通知的问题。当我更新设备的os版本时,worklight控制台表中的deviceId会更新。你知道这是否是正确的行为?

1 个答案:

答案 0 :(得分:0)

多个操作系统和硬件参数用于通过Worklight SDK生成deviceID。这意味着,当有OS升级时,deviceID可以更改。

如果没有操作系统更改 - 升级/重置,则在应用程序的生命周期内,deviceID不会更改。

此外,下次设备连接到服务器时(在deviceID更改后),服务器将使用新值进行更新。

如果您在分派通知时直接传递deviceID,则没有提及。如果是这样,您应该考虑使用UserSubscription对象来获取设备ID值。

例如:

notifyDevice

userSubscription = WL.Server.getUserNotificationSubscription ("MyEventSource", userID);
var notification = WL.Server.createDefaultNotification("Hello");
var delayTimeout = WL.Server.notifyDevice( userSubscription, userSubscription.getDeviceSubscriptions()[0].token, notification);

notifyDeviceSubscription

userSubscription = WL.Server.getUserNotificationSubscription ("MyEventSource", userID);
var notification = WL.Server.createDefaultNotification("Hello");
var delayTimeout = WL.Server.notifyDeviceSubscription(userSubscription.getDeviceSubscriptions()[0], notification);

这可以减少因用户连接到服务器时更新订阅而导致错误或错误的deviceid错误的可能性。这样,设备ID在服务器上保持更新状态。