[英]How pubnub handle push notification
我正在使用PubNub创建android聊天应用程序。我正在使用带有pubnub的GCM推送网关向消息发布消息。 假设用户A和用户B开始私聊。
案例1 - A和B连接到互联网
应用程序运行正常。 如果“A”向B发送消息,“B”接收它,无论应用程序是在前台还是后台。
案例2 - A或B未连接到互联网
让我们说“A”连接到互联网而“B”则不连接。 “A”向“B”发布消息。
我可以知道,在这种情况下,Pubnub-end和GCM-end会发生什么?
这是我发布消息的方式。
PnGcmMessage gcmMessage = new PnGcmMessage();
try {
gcmMessage.put("delay_while_idle", true);
}catch (Exception e){
e.printStackTrace();
}
gcmMessage.setData(messageObject);
PnMessage message = new PnMessage(
pubnub,
channel,
callback,
gcmMessage);
try {
message.put("pn_debug", true);
message.publish();
} catch (PubnubException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
我仍然熟悉创建实时消息传递应用程序。 所以我不知道那里缺少什么。 所以请指导我处理这个问题。
PubNub移动推送网关允许您使用GCM(Android),APNS(iOS)和MPNS(Windows Phone)作为移动应用程序的后备机制,以便在您的应用未主动运行并连接到PubNub时接收消息。
这篇PubNub文章, 在一个API调用中向订阅者和移动推送通知服务发送APNS和GCM消息 ,作为PubNub移动推送通知的迷你常见问题解答。 最后有一个简短的视频作为本文的摘要。
如果正在发布的应用程序未连接到Internet(通过单元格或wifi),则发布将失败。 您的应用程序 (不仅仅是设备)必须正在运行/活动/连接(在前台或后台)到Internet才能连接到PubNub并发布消息。
如果订阅者应用程序未连接到互联网,则您的应用程序将不会通过subscribe
回调(PubNub实时消息)接收已发布的消息。
如果设备具有某种连接(单元或wifi),以便GCM服务(这不是PubNub)可以向设备发送推送通知,则已发布消息中包含的GCM消息将到达您的应用程序。
也可以看看:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.