如何从Firebase获取设备令牌(FCM注册令牌)?如何从Firebase获取所有设备令牌?
我正在使用firebase及其服务器使用node.js制作移动应用程序。
我想从服务器发送push notification
消息,但我不知道如何获取设备令牌。
如何从外部服务器获取设备令牌?我现在正在使用Firebase管理员SDK。
设备令牌是否仅在应用程序连接到fcm服务器时生成?
当用户第一次运行应用程序并注册FCM服务器时,我应该将令牌保存到另一个数据库吗?
如何从Firebase获取设备令牌(FCM注册令牌)?如何从Firebase获取所有设备令牌?
我正在使用firebase及其服务器使用node.js制作移动应用程序。
我想从服务器发送push notification
消息,但我不知道如何获取设备令牌。
如何从外部服务器获取设备令牌?我现在正在使用Firebase管理员SDK。
设备令牌是否仅在应用程序连接到fcm服务器时生成?
当用户第一次运行应用程序并注册FCM服务器时,我应该将令牌保存到另一个数据库吗?
1.如何从外部服务器获取设备令牌?我现在正在使用Firebase管理员SDK。
目前没有API从服务器端检索您应用的所有注册令牌。开发人员(您)有责任将注册令牌发送并存储到从客户端应用程序生成的App Server中。
2.设备令牌是否仅在应用连接FCM服务器时生成?
的documentation几乎涵盖这个(见我的回答here):
在您的应用程序的初始启动时,FCM SDK生成的客户端应用程序实例的注册标记。
它在技术上没有连接到FCM服务器。它连接到FirebaseInstanceID服务(通过SDK),然后生成注册令牌。
3.用户第一次运行应用程序并注册FCM服务器时,我应该将令牌保存到另一个数据库吗?
正如我在#1中提到的,您应该将它保存在可轻松访问它的位置以发送消息。
当应用程序第一次连接时,会生成装置令牌,则此令牌必须存储在数据库中,如果一个新的令牌被分配
public class MyAndroidFirebaseInstanceIdService extends FirebaseInstanceIdService {
private static final String TAG = "MyAndroidFCMIIDService";
@Override
public void onTokenRefresh() {
//Get hold of the registration token
String refreshedToken = FirebaseInstanceId.getInstance().getToken();
//Log the token
Log.d(TAG, "Refreshed token: " + refreshedToken);
}
private void sendRegistrationToServer(String token) {
//Implement this method if you want to store the token on your server
}
}
更换请参见下面的Tutorial
不能使用谷歌实例标识API从APNS令牌生成fcm令牌,并使用它将推送通知发送到iOS设备而无需集成Firebase SDK?我尝试过,但没有SDK集成,推动不起作用。一旦SDK被集成,相同的API开始返回正确的fcm令牌,这对推送工作正常。然后,您实际上可以移除Firebase SDK,并仍然使用Firebase接收推送通知。不能firebase简单地采取原始设备令牌,并发送推送通知使用正确的证书或身份验证密钥。为什么必须包含SDK? –
此处描述了将APNS令牌转换为fcm注册令牌的API:https://developers.google.com/instance-id/reference/server#create_registration_tokens_for_apns_tokens –