Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 服务器推送通知实现_Android_Ios_Push Notification_Apple Push Notifications - Fatal编程技术网

Android 服务器推送通知实现

Android 服务器推送通知实现,android,ios,push-notification,apple-push-notifications,Android,Ios,Push Notification,Apple Push Notifications,集团, 我计划将自己的服务器推送通知服务器应用到Android/IOS应用程序。因此,我的应用服务器(可能通过NodeJs实现)将联系该通知服务器以将消息推送到设备。所以我在网上冲浪,找到了以下现有的解决方案 谷歌云消息 苹果推送通知服务 Firefox操作系统推送通知 Microsoft推送通知服务 Q1) 在各自的网站上;他们只是告知如何使用通知服务器。但是我需要他们如何实现服务器推送的信息 请告诉我;他们是否遵循以下任何一条 投票 长轮询 流式 服务器发送事件 与客户端的TLS、SSL或

集团,

我计划将自己的服务器推送通知服务器应用到Android/IOS应用程序。因此,我的应用服务器(可能通过NodeJs实现)将联系该通知服务器以将消息推送到设备。所以我在网上冲浪,找到了以下现有的解决方案

谷歌云消息

苹果推送通知服务

Firefox操作系统推送通知

Microsoft推送通知服务


Q1)
在各自的网站上;他们只是告知如何使用通知服务器。但是我需要他们如何实现服务器推送的信息

请告诉我;他们是否遵循以下任何一条

投票

长轮询

流式

服务器发送事件

与客户端的TLS、SSL或TCP套接字连接

XMPP


问题2)

以下两种方法声称,虽然我的应用程序没有运行;他们仍然可以向应用程序发送通知吗?这怎么可能

苹果推送通知服务

Firefox操作系统推送通知


Q3)

在Firefox操作系统中推送通知;他们已经通知说,为了节省电池寿命,他们正在避免“保持活力”。我的问题是如果没有keep alive,如何确定连接是否仍然存在


Q4)

所有这些(GCM/APNS/FireFox OS)的实现都只是服务器端推送,不会接受来自客户端的请求。我说得对吗
因此,我的服务器仍然必须处理除推送消息以外的数百万个设备请求,对吗

如果我在自己的通知服务器和客户端设备之间使用websocket,我是否需要在我的应用服务器和客户端之间再维护一个websocket连接以接收来自设备的请求?

Apple推送通知由iOS控制,而不是由你的应用程序控制。因此,即使应用程序未运行,此功能也可用。要发送通知,请打开到apple服务器的ssl连接并发送推送通知负载。因为iOS将处理所有事情,所以没有轮询或任何东西


如果您打算编写自己的服务器,则无法使用用户推送通知,并且将耗尽电池电量,因为您需要从自己的服务器提取消息。Apple APNS由iOS控制,它偶尔会连接到Apple服务器,并收集设备上所有应用程序的所有推送通知

除了技术细节,还有各种第三方解决方案,如亚马逊SNS。每百万份通知的费用大约为0.50美元。与实现您自己的服务器/服务(时间、成本、可靠性)相比,这一微小的成本,我觉得您应该将时间花在项目的其他方面

网上有很多好文章,你可以浏览,你会得到答案的。然而,我试图回答你的问题: 对于android和谷歌服务器,答案大多是正确的

Ans1) 它们有监听器,您必须通过在代码中使用它们的库类来使用它们。你不必费心推。您必须将消息发送到服务器。服务器将消息推送到设备。他们使用OAuth。 关于协议,有两种方法使用CCS和XMPP。CCS只是将XMPP用作经过身份验证的传输层,因此您可以使用大多数XMPP库来管理连接。要向设备发送通知,您可以在android应用程序中编写要发送的代码以及服务器代码。消息发送将仅由您的代码完成。其余的将由谷歌服务器在GCM的情况下照顾。 您可以在此链接查看详细信息

还有,关于安全问题

助理秘书长(2) 是的,如果你的应用程序没有运行,那么设备也会收到通知,因为你必须为广播侦听器编写代码。在后台,它将监听服务器,每当有任何消息包出现时,它都会接收消息作为通知。安卓有一项服务,你不必为此烦恼。您只需使用library类来使用这些资源,这样可以使您的工作更轻松,并允许它们在应用程序未运行时进行编写,然后应用程序也会收到通知。显然,会有一些监听器使应用程序接收。请检查此链接中的“接收消息”部分

答复3)- Firefox OS推送通知的设计目的只有一件事——唤醒应用程序。它们不处理数据。检查此链接

答复4)- 不,它也将接受用户的请求。 我不确定其他人,但对于GCM它会这样做。 请勾选“发送消息”


希望这对你的问题有所帮助

Apple推送通知由iOS控制,而不是由您的应用程序控制。因此,即使应用程序未运行,此功能也可用。要发送通知,请打开到apple服务器的ssl连接并发送推送通知负载。由于iOS将处理所有事情,因此没有轮询或任何操作。@rckoenes谢谢!!因此,如果我想实现自己的通知服务器;是否可以在ios上编写代码以打开与我的服务器的SSL连接?否,您的服务器应与Apple推送通知服务器通信。如果您打算编写自己的服务器,则无法使用用户推送通知,并且将耗尽电池电量,因为您需要从自己的服务器提取消息。Apple APNS由iOS控制,它偶尔会连接到Apple服务器,并收集设备上所有应用程序的所有推送通知。@rckoenes能否将此添加为答案?团队,所有这些问题都与决定选择服务器推送通知相关。我认为这是寻找服务器推送技术的人的一站式问题。我不想从这里引出四个不同的问题,请从长远考虑;必须发送数十亿条通知。现在它们的价格是0.50美元;不知道未来会怎样。。?此外,我必须按照第三方系统理解/编码