Android 如何使用flatter在listview中动态添加通知?

Android 如何使用flatter在listview中动态添加通知?,android,flutter,Android,Flutter,因此,我使用firebase接收我的通知,但我想将每个通知显示为动态列表视图,并附加新通知。此外,主页上关于如何使用本课程的任何信息也会有所帮助。任何帮助都将不胜感激 if (Platform.isIOS) { iosSubscription = _fcm.onIosSettingsRegistered.listen((data) { print(data); _saveDeviceToken(); }); _fcm.requestNotificationPermi

因此,我使用firebase接收我的通知,但我想将每个通知显示为动态列表视图,并附加新通知。此外,主页上关于如何使用本课程的任何信息也会有所帮助。任何帮助都将不胜感激

if (Platform.isIOS) {
  iosSubscription = _fcm.onIosSettingsRegistered.listen((data) {
    print(data);
    _saveDeviceToken();
  });

  _fcm.requestNotificationPermissions(IosNotificationSettings());
} else {
  _saveDeviceToken();
}

_fcm.configure(
  onMessage: (Map<String, dynamic> message) async {
    print("onMessage: $message");
    // final snackbar = SnackBar(
    //   content: Text(message['notification']['title']),
    //   action: SnackBarAction(
    //     label: 'Go',
    //     onPressed: () => null,
    //   ),
    // );

    // Scaffold.of(context).showSnackBar(snackbar);
    showDialog(
      context: context,
      builder: (context) => AlertDialog(
        content: ListTile(
          title: Text(message['notification']['title']),
          subtitle: Text(message['notification']['body']),
        ),
        actions: <Widget>[
          FlatButton(
            color: Colors.amber,
            child: Text('Ok'),
            onPressed: () => Navigator.of(context).pop(),
          ),
        ],
      ),
    );
  },
  onLaunch: (Map<String, dynamic> message) async {
    print("onLaunch: $message");
    // TODO optional
  },
  onResume: (Map<String, dynamic> message) async {
    print("onResume: $message");
    // TODO optional
  },
);
if(Platform.isIOS){
iosSubscription=fcm.oniassettingsregistered.listen((数据){
打印(数据);
_saveDeviceToken();
});
_fcm.requestNotificationPermissions(IONotificationSettings());
}否则{
_saveDeviceToken();
}
_fcm.configure(
onMessage:(映射消息)异步{
打印(“onMessage:$message”);
//最终蛇杆=蛇杆(
//内容:文本(消息['notification']['title']),
//行动:SnackBarAction(
//标签:“开始”,
//onPressed:()=>null,
//   ),
// );
//脚手架.of(上下文).showSnackBar(snackbar);
显示对话框(
上下文:上下文,
生成器:(上下文)=>AlertDialog(
内容:ListTile(
标题:文本(消息['notification']['title']),
字幕:文本(消息['notification']['body']),
),
行动:[
扁平按钮(
颜色:颜色。琥珀色,
子项:文本('Ok'),
onPressed:()=>Navigator.of(context.pop(),
),
],
),
);
},
onLaunch:(映射消息)异步{
打印(“onLaunch:$message”);
//TODO可选
},
onResume:(映射消息)异步{
打印(“onResume:$message”);
//TODO可选
},
);

}

我想这可能行得通


 ListView.builder(
        itemCount: null == messagesList ? 0 : messagesList.length,
        itemBuilder: (BuildContext context, int index) {
          return Card(
            child: Padding(
              padding: EdgeInsets.all(10.0),
              child: Text(
                messagesList[index].message,
                style: TextStyle(
                  fontSize: 16.0,
                  color: Colors.black,
                ),