gpt4 book ai didi

android - 服务器推送通知实现

转载 作者:IT王子 更新时间:2023-10-28 23:31:23 26 4
gpt4 key购买 nike

组,

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

Google cloud messaging

Apple push notification service

Firefox os push notifications

Microsoft push notification service


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

请告诉我;他们是否遵循以下任何内容?

Polling

Long polling

Streaming

Server Sent Events

TLS, SSL or TCP socket connections with Client

XMPP


Q2)

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

Apple push notification service

Firefox os push notifications


Q3)

在 Firefox 操作系统中推送通知;他们已经告知他们正在避免保持 Activity 状态以节省电池生命周期。我的问题是没有 keep-alive 如何确定连接是否仍然存在?


Q4)

所有这些(GCM/APNS/FireFox OS)实现是否只是服务器端推送,不会接受来自客户端的请求。我对么?
所以除了推送消息之外,我的服务器仍然必须处理数百万个设备请求,对吧?
如果我在自己的通知服务器和客户端设备之间使用 websocket,我是否需要在我的应用服务器和客户端之间再维护一个 websocket 连接以接收来自设备的请求?

最佳答案

网上有很多很好的文章,你可以去看看你会得到答案。但是我试图回答你的问题:答案大多适用于 android 和 google 服务器。

答案1)他们有他们的监听器,你必须通过在你的代码中使用他们的库类来使用它们。你不必为插入而烦恼。您必须将消息发送到服务器服务器会将消息推送到设备。他们使用 OAuth。关于协议(protocol),有两种使用 CCS 和 XMPP 的方法。 CCS 只是将 XMPP 用作经过身份验证的传输层,因此您可以使用大多数 XMPP 库来管理连接。要将通知发送到设备,您可以在 android 应用程序中编写代码以发送以及您的服务器代码。消息发送将仅由您的代码完成。在 GCM 情况下,Google Server 将负责休息。您可以在此链接查看详细信息

http://developer.android.com/google/gcm/server.html

另外,为了安全问题

google cloud messaging security https://groups.google.com/forum/#!topic/android-gcm/M-EevBitbhQ

答案 2)是的,如果您的应用程序没有运行,那么设备 vcan 也会收到通知,因为您必须为广播监听器编写代码。在后台,它将监听服务器,每当有任何消息包出现时,它都会收到消息作为通知。 Android 有服务,您不必为此烦恼。您只需使用使您的工作更轻松的库类来使用这些资源,并在您的应用程序未运行时让它们编写,然后它也会收到通知。显然,会有一些听众让应用程序接收。检查此链接中的“接收消息”部分

http://developer.android.com/google/gcm/client.html

答案 3)-Firefox OS 推送通知是为一件事而设计的——唤醒应用程序。他们不处理数据。检查此链接

https://hacks.mozilla.org/2013/07/dont-miss-out-on-the-real-time-fun-use-firefox-os-push-notifications/

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

http://developer.android.com/google/gcm/client.html

希望这对您的问题有所帮助。

关于android - 服务器推送通知实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23466637/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com