我想知道如何在 Android 上从后台远程服务器获取推送消息

问题描述 投票:0回答:1

我真的很好奇Android(使用java语言)通常如何实现允许用户即使不使用应用程序也可以发送实时推送警报的处理。

  • 各种通讯应用程序(收到消息时发出警报)
  • 天气应用程序
  • 各种银行APP(存取款报警)
  • 来自其他应用程序的事件消息

我研究过两种方法。

第一种方法是socket。 我擅长处理 Node.js 服务器和 Web 客户端上的 Web 套接字。

但是在Android上,我不知道如何使用socket,所以我查了一下。

Android使用了以下代码。 Socket套接字 = new Socket("xxx.xxx.xxx.xxx", 9989); Log.i("测试", "好!");

node.js 服务器编写了以下代码。 ws.on("connect", connectHandler);

但是 Android上成功打印“good”日志 Node.js 服务器已确认 connectHandler 方法未运行。 有什么问题吗?

socket是常见的实现方式吗? 如果是的话,如果是一个拥有1000万用户的应用程序 是否有一千万个客户端同时通过socket访问服务器?

我学到的第二种方法是 Firebase Cloud Messaging 如果我运行 Instagram 大小的应用程序,它会是付费服务吗?

我想创建的应用程序是 Instagram,大约有一百万人使用它。

  • 收到DM时发出警报
  • 如果您在我的帖子上发表评论或点赞,则会弹出警报
  • 其他类型的警报

问题的重点是 超过百万用户后台始终连接服务器 您可以随时收到消息。

非常感谢您阅读这篇长文,我期待您的来信。

android node.js sockets push-notification
1个回答
0
投票

通常,推送通知是使用FCM

实现的

我从来没有用套接字开发过它,但我的观点是应用程序必须保持套接字持续连接,因此应用程序的电池使用可能存在问题。

FCM 的费用似乎是免费的,您可以在该链接上查看。 https://firebase.google.com/pricing

© www.soinside.com 2019 - 2024. All rights reserved.