首页 > 解决方案 > 如何让服务器主动通知客户端资源变化?

问题描述

我的客户端是一个 android 应用程序,服务器是 Spring Boot 中的 REST 服务器,它们都是用 Kotlin 编写的。场景是我们有多个客户端与服务器通信并在数据库中写入资源。在这些客户中,有一个协调员,每次更新此资源时,我都希望得到通知。

PUSH 通知是一种可能的解决方案吗?如果是,谁触发通知?假设我不希望 Firebase 控制台启动这些通知。我看过这些教程:this用于客户端,this用于服务器。通知 Firebase 控制器是使用其端点构建的,这是否意味着需要请求才能获取这些通知?我不知道它是如何工作的,以及这种类型的通信是否是在没​​有从客户端轮询的情况下进行的。

标签: androidfirebasespring-bootkotlinpush-notification

解决方案


  1. Socket -> https://github.com/Tinder/Scarlet可以使用 Scarlet 与服务器通信,类似改造

  2. FCM -> https://stackoverflow.com/a/37948441/8370216你可以从你的服务器触发这个而不是推送通知使用数据有效负载,因为它给你更多的控制权


推荐阅读