我正在使用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):