亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 React Native 中獲取 Firebase Cloud Messaging 令牌

在 React Native 中獲取 Firebase Cloud Messaging 令牌

烙印99 2023-07-14 15:28:30
我是本機反應新手,我正在嘗試創建一個具有后臺通知的應用程序。經過一些研究后,我覺得最好的方法是使用 firebase 云消息傳遞。在學習了許多不同的教程后,我編寫了以下代碼。export default class App extends React.Component {   requestUserPermission = async () => {    const authStatus = await messaging().requestPermission();    const enabled =      authStatus === messaging.AuthorizationStatus.AUTHORIZED ||      authStatus === messaging.AuthorizationStatus.PROVISIONAL;      if (enabled) {        getFcmToken();        console.log('Authorization status:', authStatus);      }    };    getFcmToken = async () => {      const fcmToken = await messaging().getToken();      if (fcmToken) {          console.log(fcmToken);          console.log("Your Firebase Token is:", fcmToken);      } else {          console.log("Failed", "No Token Recived");      }    };    async componentDidMount() {      await this.requestUserPermission();       // Register background handler       messaging().setBackgroundMessageHandler(async (remoteMessage) => {       console.log('Messaage handled in the background!', remoteMessage);  });};  }當我在 iOS 設備上運行應用程序時,我可以在終端中看到以下錯誤。ReferenceError:找不到變量:getFcmToken當我嘗試發送測試消息時,它似乎沒有出現。我的問題是:我是否錯誤地編寫了代碼或者我做錯了什么?
查看完整描述

1 回答

?
GCT1015

TA貢獻1827條經驗 獲得超4個贊

getFcmToken在實際使用之前聲明。


    // declare getFcmToken first

    const getFcmToken = async () => {

      const fcmToken = await messaging().getToken();

      if (fcmToken) {

          console.log(fcmToken);

          console.log("Your Firebase Token is:", fcmToken);

      } else {

          console.log("Failed", "No Token Recived");

      }

    };


    // then use it

    const authStatus = await messaging().requestPermission();

    const enabled =

      authStatus === messaging.AuthorizationStatus.AUTHORIZED ||

      authStatus === messaging.AuthorizationStatus.PROVISIONAL;

      if (enabled) {

        getFcmToken();

        console.log('Authorization status:', authStatus);

      }

    };


查看完整回答
反對 回復 2023-07-14
  • 1 回答
  • 0 關注
  • 203 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號