微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 Flutter 中显示本地通知时出错

如何解决在 Flutter 中显示本地通知时出错

我正在使用 flutter_local_notifications 插件认样板应用。

这是我正在使用的代码-

import 'package:Flutter/material.dart';
import 'package:Flutter_local_notifications/Flutter_local_notifications.dart';

void main() async {
  FlutterlocalnotificationsPlugin FlutterlocalnotificationsPlugin =
      FlutterlocalnotificationsPlugin();

// added boat.png in the drawables folder
  const AndroidInitializationSettings initializationSettingsAndroid =
      AndroidInitializationSettings('boat.png');

  final InitializationSettings initializationSettings = InitializationSettings(
    android: initializationSettingsAndroid,iOS: null,macOS: null,);
  await FlutterlocalnotificationsPlugin.initialize(initializationSettings,onSelectNotification: selectNotification);

  void showNotification() async {
    const AndroidNotificationDetails androidplatformChannelSpecifics =
        AndroidNotificationDetails(
            'your channel id','your channel name','your channel description',importance: Importance.max,priority: Priority.high,showWhen: false);
    const NotificationDetails platformChannelSpecifics =
        NotificationDetails(android: androidplatformChannelSpecifics);
    await FlutterlocalnotificationsPlugin.show(
        0,'plain title','plain body',platformChannelSpecifics,payload: 'item x');
  }

  showNotification();
  runApp(MyApp());
}

Future selectNotification(String payload) async {
  if (payload != null) {
    debugPrint('notification payload: $payload');
  }
  // Modified the example code - it navigated to a different screen. I am just printing the payload
  print(payload); 
}


注意 - 我专门为 android 应用程序使用该插件。所以,我还没有为 iOS 或 macOS 配置它。

我怀疑我没有正确使用插件。但我遵循了插件网站上的所有说明。

我收到此错误消息 -

E/Flutter ( 5446): [ERROR:Flutter/lib/ui/ui_dart_state.cc(186)] Unhandled Exception: Null check operator used on a null value
E/Flutter ( 5446): #0      MethodChannel.binaryMessenger (package:Flutter/src/services/platform_channel.dart:142:86)
E/Flutter ( 5446): #1      MethodChannel.setMethodCallHandler (package:Flutter/src/services/platform_channel.dart:378:5)
E/Flutter ( 5446): #2      AndroidFlutterlocalnotificationsPlugin.initialize (package:Flutter_local_notifications/src/platform_Flutter_local_notifications.dart:84:14)
E/Flutter ( 5446): #3      FlutterlocalnotificationsPlugin.initialize (package:Flutter_local_notifications/src/Flutter_local_notifications_plugin.dart:120:13)
E/Flutter ( 5446): #4      main (package:desktop_test/main.dart:16:41)
E/Flutter ( 5446): #5      _runMainZoned.<anonymous closure>.<anonymous closure> (dart:ui/hooks.dart:146:25)
E/Flutter ( 5446): #6      _rootRun (dart:async/zone.dart:1354:13)
E/Flutter ( 5446): #7      _CustomZone.run (dart:async/zone.dart:1258:19)
E/Flutter ( 5446): #8      _runZoned (dart:async/zone.dart:1789:10)
E/Flutter ( 5446): #9      runZonedGuarded (dart:async/zone.dart:1777:12)
E/Flutter ( 5446): #10     _runMainZoned.<anonymous closure> (dart:ui/hooks.dart:139:5)
E/Flutter ( 5446): #11     _delayEntrypointInvocation.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:283:19)
E/Flutter ( 5446): #12     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:184:12)
E/Flutter ( 5446): 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。