【问题标题】:Flutter FCM Push Notificaiton Not WorkingFlutter FCM 推送通知不起作用
【发布时间】:2020-10-14 20:28:06
【问题描述】:

我正在使用 Firebase 推送通知的颤振应用程序。我有一个问题是 onMessage 我从 Firebase 接收数据,但问题是唯一打印数据工作正常但不能导航到其他屏幕。

_configureFirebaseMessageing() {
    _firebaseMessaging.configure(
      onMessage: (Map<String, dynamic> message) async {

        print('\n\n\n message from fcm  \n $message\n\n\n\n');
        Navigator.pushNamed(context, Routes.FirstProfile);
      },
      onLaunch: (Map<String, dynamic> message) async {


        Navigator.push(context, MaterialPageRoute(builder: (BuildContext context){
          return NativationPage("this is from main ON Resume ${message['data']['title']}");
        }));


      },
      onResume: (Map<String, dynamic> message) async {

        Navigator.push(context, MaterialPageRoute(builder: (BuildContext context){
          return NativationPage("this is from main ON Resume ${message['data']['title']}");
        }));
        
      },

    );
  }

这是我的代码,是的,只有控制台上的打印数据有效,并且导航到其他屏幕在所有三个 onMessage、onLaunch 和 onResume 上都无效。

我在控制台中有一个错误:

E/FlutterFcmService( 2445): Fatal: failed to find callback

第二个错误是

w/firebasemessaging( 2445): missing default notification channel metadata in android manifest. default value will be used.

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    导航:

    我认为这是 onMessage 内部的上下文问题。您必须在 MaterialApp 小部件中定义 navigatorKey,然后您可以使用 navigatorKey.currentContext 访问 onMessage 中的当前上下文。

    更多详情可以查看answer

    错误/警告:

    错误和警告是因为您错过了一些插件配置。尽一切努力提及here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-25
      • 2020-07-13
      • 2018-03-05
      • 2018-04-24
      • 1970-01-01
      • 2019-08-07
      • 2021-01-12
      • 2019-01-11
      相关资源
      最近更新 更多