如何知道 Pubnub 中的退订频道请求是否成功?
How to know if Unsubscribe channels request in Pubnub is success?
我在退出我的应用程序时尝试取消订阅 PubNub 频道,就像这样
client?.unsubscribeFromAll()
我的问题是我无法确定退订频道过程是否成功!
没有错误、成功的完成处理程序。
所以我的问题是如何确定取消订阅频道的过程?
编辑
我在我的 Pubnub 频道中发送推送通知,所以我希望在用户注销后不再收到推送通知,所以我决定取消订阅该频道,但似乎
client?.unsubscribeFromAll()
不起作用,因为尽管我从我的应用程序注销后仍然收到推送通知,所以你知道如何取消订阅 PubNub 频道,这样我从我的应用程序注销后就不会收到推送通知了吗?
要解决这个问题,您应该使用委托跟踪客户端状态更改时使用的相同回调,如下所示:
func client(client: PubNub!, didReceiveStatus status: PNSubscribeStatus!) {
if status.operation == .UnsubscribeOperation {
if !status.error { /* Handle successful unsubscription. */ }
else { /* Handle unsubscription error. */ }
}
}
以下情况下的回调:使用状态更改、存在和消息到达,因为可能很少有观察者想知道这一点。其他操作通常基于上下文和完成块在这些情况下绰绰有余。
编辑
实时通道和推送通知启用/禁用 - 不相互链接,如果已明确启用推送通知,则也应手动禁用它们。取消订阅只是与实时数据通道断开连接。
使用下面的代码禁用指定 devicePushToken
的所有推送通知:
client?.removeAllPushNotificationsFromDeviceWithPushToken(devicePushToken, andCompletion: { (status) in
if !status.error { /* Handle push notification disable completed successfully. */ }
else { /* Handle push notification disable did fail. */ }
})
此致,
谢尔盖
我在退出我的应用程序时尝试取消订阅 PubNub 频道,就像这样
client?.unsubscribeFromAll()
我的问题是我无法确定退订频道过程是否成功!
没有错误、成功的完成处理程序。
所以我的问题是如何确定取消订阅频道的过程?
编辑
我在我的 Pubnub 频道中发送推送通知,所以我希望在用户注销后不再收到推送通知,所以我决定取消订阅该频道,但似乎
client?.unsubscribeFromAll()
不起作用,因为尽管我从我的应用程序注销后仍然收到推送通知,所以你知道如何取消订阅 PubNub 频道,这样我从我的应用程序注销后就不会收到推送通知了吗?
要解决这个问题,您应该使用委托跟踪客户端状态更改时使用的相同回调,如下所示:
func client(client: PubNub!, didReceiveStatus status: PNSubscribeStatus!) {
if status.operation == .UnsubscribeOperation {
if !status.error { /* Handle successful unsubscription. */ }
else { /* Handle unsubscription error. */ }
}
}
以下情况下的回调:使用状态更改、存在和消息到达,因为可能很少有观察者想知道这一点。其他操作通常基于上下文和完成块在这些情况下绰绰有余。
编辑
实时通道和推送通知启用/禁用 - 不相互链接,如果已明确启用推送通知,则也应手动禁用它们。取消订阅只是与实时数据通道断开连接。
使用下面的代码禁用指定 devicePushToken
的所有推送通知:
client?.removeAllPushNotificationsFromDeviceWithPushToken(devicePushToken, andCompletion: { (status) in
if !status.error { /* Handle push notification disable completed successfully. */ }
else { /* Handle push notification disable did fail. */ }
})
此致,
谢尔盖