响应本机 android,尝试获取 firebase 消息传递设备令牌时出现 FIS_AUTH_ERROR

Kha*_*ara 8 android token push-notification react-native firebase-cloud-messaging

我尝试使用 react native 基本消息传递和 react native 推送通知库来获取 android 设备令牌以发送推送通知:

我在 AndroidManifest.xml 中添加了配置:

...
   <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>

    <!-- < Only if you are using GCM or localNotificationSchedule() > -->
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <permission
        android:name="${applicationId}.permission.C2D_MESSAGE"
        android:protectionLevel="signature" />
    <uses-permission android:name="${applicationId}.permission.C2D_MESSAGE" />
    <!-- < Only if you are using GCM or localNotificationSchedule() > -->
...
Run Code Online (Sandbox Code Playgroud)

在我的 App.js 中

// ----- COMPONENT DID MOUNT ---- //
  async componentDidMount() {
    // ====================================================== //
    // ====================================================== //
    // ====================================================== //
    const granted = messaging().requestPermission();

    if (granted) {
      console.log('User granted messaging permissions!');
      // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //
      firebase
        .messaging()
        .getToken()
        .then((fcmToken) => {
          if (fcmToken) {
            // user has a device token
            console.log('-------- FCM TOKEN -------');
            console.log(fcmToken);
            console.log(JSON.stringify(fcmToken));
            this._setItem(fcmToken);
          } else {
            // user doesn't have a device token yet
            console.log('error');
          }
        });
      // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //
    } else {
      console.log('User declined messaging permissions :(');
    }
    // ====================================================== //
    // ====================================================== //
    // ====================================================== //
  }
  // ----- FIN COMPONENT DID MOUNT ---- //
Run Code Online (Sandbox Code Playgroud)

我有 :

可能未处理的 Promise 拒绝 (id: 0):

错误:[消息/未知] FIS_AUTH_ERROR

NativeFirebaseError: [消息/未知] FIS_AUTH_ERROR

Ste*_*ier 0

Google Cloud Console中,确保 google-services.json 中的 API 密钥包含以下权限:

  • Firebase 云消息 API
  • Firebase 安装 API