Flutter:创建一个 pdf 文件,显示下载通知并在用户单击通知时打开它

Flutter: Create a pdf file, show download notification and Open it when user click on notification

我正在开发一个 flutter 应用程序。我在“下载”文件夹中创建一个 pdf 文件,在“下载”文件夹中创建文件后,使用“local_notification”插件显示“下载已完成”通知。

现在我想在用户单击通知时显示该 pdf。谁能指导我如何做到这一点?

下面是我的代码

final android = AndroidNotificationDetails('0', 'Adun Accounts',
        channelDescription: 'channel description',
        priority: Priority.high,
        importance: Importance.max,
        icon: '');
    final iOS = IOSNotificationDetails();
    final platform = NotificationDetails(android: android, iOS: iOS);

    await flutterLocalNotificationsPlugin.show(
        0, // notification id
        fileName,
        'Download complete.',
        platform);

show() 有一个参数叫 payload ,你可以在这里传递pdf文件的路径。在您的 pubspec.yaml 中添加插件 open_file。然后在main.dart里面,添加如下代码

FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin =
    FlutterLocalNotificationsPlugin();

Future<void> initNotification() async {
// initialise the plugin. app_icon needs to be a added as a drawable resource to the Android head project
  const AndroidInitializationSettings initializationSettingsAndroid =
      AndroidInitializationSettings('notification_icon');
  final IOSInitializationSettings initializationSettingsIOS =
      IOSInitializationSettings();
  final MacOSInitializationSettings initializationSettingsMacOS =
      MacOSInitializationSettings();
  final InitializationSettings initializationSettings = InitializationSettings(
      android: initializationSettingsAndroid,
      iOS: initializationSettingsIOS,
      macOS: initializationSettingsMacOS);
  await flutterLocalNotificationsPlugin.initialize(initializationSettings,
      onSelectNotification: (String? payload) {
    if (payload != null) OpenFile.open(payload);
  });
}

注意:此函数不应在任何 class.