如何从Firebase获取设备令牌(FCM注册令牌)?

我正在使用firebase制作移动应用程序,其服务器使用node.js.

我想从服务器发送push notification条消息,但我不知道如何获取设备令牌.

  1. 如何从外部服务器获取设备令牌?我现在正在使用Firebase管理SDK.

  2. 设备令牌是否仅在应用程序连接fcm服务器时生成?

  3. 当用户第一次运行应用程序并注册FCM服务器时,我应该将令牌保存到另一个数据库吗?

推荐答案

1. How to get device tokens from external server? I'm using Firebase admin SDK now.

目前没有API可以从服务器端检索应用程序的所有注册令牌.开发者(您)有责任将注册令牌发送并存储到您的应用程序服务器,该服务器由客户端应用程序端生成.

2. Is the device token only generated when the app is connected FCM server?

documentation项基本上涵盖了这一点(另见我的答案here):

在应用程序初始启动时,FCM SDK会为客户端应用程序实例生成注册令牌.

从技术上讲,它无法连接到FCM服务器.它连接到FirebaseInstanceID服务(通过SDK),后者反过来生成注册令牌.

3. Should I save token to another database when user first run the app and register FCM server?

正如我在#1中提到的,您应该将其保存在可以轻松访问以发送消息的位置.

React-native相关问答推荐

REACT-Native-Render-html中所有文本的默认字体大小

收到错误Constants.platform.ios.model已被弃用,以支持 expo-device

单击react 本机时如何从同一屏幕更改内容

用图像 react native 动画进度条

Error: Invariant Violation: Touchable child must either be native or forward setNativeProps to a native component stack

需要以前的props和state回调的静态 getDerivedStateFromProps?

判断状态对象是否为空

请求无法完成,因为您已超出配额

React Native 上传到 S3 存储空间

React-native 组件的 elevation样式导致的阴影

react-native createbottomtabnavigator 隐藏标签栏标签

使用 applicationIdSuffix 时 React Native 应用程序不会启动

带有 xcode 模拟器的 react-native 有非常慢的alert

如何在 React Native 中优化图像

如何在本地构建 Expo APK

在 OPTIONS 响应后使 fetch API 与 CORS 一起工作

Super expression must either be null or a function, not undefined

React Native 中的 CSS 三角形

无法解析模块react-native-screen

类型 androidx.appcompat.resources.R$dimen 被定义了多次