Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
颤振与振动;Firebase消息传递:从通知中提取数据_Firebase_Flutter_Firebase Cloud Messaging - Fatal编程技术网

颤振与振动;Firebase消息传递:从通知中提取数据

颤振与振动;Firebase消息传递:从通知中提取数据,firebase,flutter,firebase-cloud-messaging,Firebase,Flutter,Firebase Cloud Messaging,当用户点击通知时,我如何让flifter知道通知的内容是什么?我尝试了文档()中给出的示例,但它似乎与我的代码不兼容: main.dart: main() { WidgetsFlutterBinding.ensureInitialized(); runApp(MyApp()); } class MyApp extends StatefulWidget { @override _MyAppState createState() => _MyAppState(); } c

当用户点击通知时,我如何让flifter知道通知的内容是什么?我尝试了文档()中给出的示例,但它似乎与我的代码不兼容:

main.dart:

main()  {
  WidgetsFlutterBinding.ensureInitialized();
  runApp(MyApp());
}

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> with WidgetsBindingObserver {
  @override
  void initState() {
    super.initState();
    pushNotifactionsInitialization();
    ...
  }
}
String notificationMessage;

void pushNotifactionsInitialization() async {
 FirebaseMessaging messaging = FirebaseMessaging.instance;

 NotificationSettings settings = await messaging.requestPermission(
   alert: true,
   announcement: false,
   badge: true,
   carPlay: false,
   criticalAlert: false,
   provisional: false,
   sound: true,
 );

 // Get any messages which caused the application to open from
 // a terminated state.
 RemoteMessage initialMessage = await FirebaseMessaging.instance.getInitialMessage();
 if (initialMessage != null) {
    showToast(initialMessage.toString()); //Displays Toast
 }

 // Also handle any interaction when the app is in the background via a
 // Stream listener
 FirebaseMessaging.onMessageOpenedApp.listen((RemoteMessage message) {
   if (message != null) {
     showToast(message.toString());
   }
 });
}