颤振:从FirebaseMessaging的onBackgroundMessage方法访问SharedReferences

颤振:从FirebaseMessaging的onBackgroundMessage方法访问SharedReferences,firebase,flutter,push-notification,firebase-cloud-messaging,sharedpreferences,Firebase,Flutter,Push Notification,Firebase Cloud Messaging,Sharedpreferences,在我的Flatter应用程序中,我想将从Firebase数据消息接收到的数据保存到SharedReferences。 我将FirebaseMessaging对象配置为: _firebaseMessaging.configure( onMessage: (Map<String, dynamic> message) { // this works fine print("onMessage: ");

在我的Flatter应用程序中,我想将从Firebase数据消息接收到的数据保存到SharedReferences。 我将FirebaseMessaging对象配置为:

_firebaseMessaging.configure(
        onMessage: (Map<String, dynamic> message) {
          // this works fine
          print("onMessage: ");
        },
        onLaunch: (Map<String, dynamic> data) {
          print("onLaunch: ");
        },
        onResume: (Map<String, dynamic> data) {
          print("onResume: ");
        },
        onBackgroundMessage: myBackgroundMessageHandler,
      );
\u firebaseMessaging.configure(
onMessage:(映射消息){
//这个很好用
打印(“onMessage:”);
},
onLaunch:(地图数据){
打印(“onLaunch:”);
},
onResume:(地图数据){
打印(“在简历上:”);
},
onBackgroundMessage:myBackgroundMessageHandler,
);
这是顶级myBackgroundMessageHandler方法:

Future<dynamic> myBackgroundMessageHandler(Map<String, dynamic> message) {
    // This doesn't work
    print("background message"); // this isn't even printed!
    SharedPreferences.getInstance().then(...) // here I have to save some data
  }
未来myBackgroundMessageHandler(映射消息){ //这不管用 打印(“背景消息”);//这甚至没有打印! SharedReferences.getInstance()。然后(…)//这里我必须保存一些数据 } 问题是myBackgroundMessageHandler似乎根本没有被调用。 但是,该通知是通过电话接收的。 我还尝试从消息中删除通知字段,在这种情况下,会调用myBackgroundMessageHandler,但通知没有到达。有没有一种方法既可以接收通知又可以触发方法