notifi
unknown
dart
2 years ago
1.9 kB
4
Indexable
class NotificationApi { static final _notification = FlutterLocalNotificationsPlugin(); static final onNotifications = BehaviorSubject<String?>(); static Future notificationDetails() async { return NotificationDetails( android: AndroidNotificationDetails('channel id', 'channel name', importance: Importance.high, icon: '@mipmap/ic_launcher'), iOS: IOSNotificationDetails( presentAlert: true, presentBadge: true, presentSound: true)); } static Future init() async { final android = AndroidInitializationSettings('@mipmap/ic_launcher'); final iOS = IOSInitializationSettings( requestSoundPermission: false, // onDidReceiveLocalNotification: onDidReceiveLocalNotification, requestBadgePermission: false, requestAlertPermission: false); final settings = InitializationSettings(android: android, iOS: iOS); await _notification.initialize(settings, onSelectNotification: (payload) async { onNotifications.add(payload); }); } enableIOSNotifications() async { await FirebaseMessaging.instance .setForegroundNotificationPresentationOptions( alert: true, // Required to display a heads up notification badge: true, sound: true, ); } void localNotification({BuildContext? context}) async { FirebaseMessaging.onMessage.listen((RemoteMessage message) { _notification.show( 12345, message.notification!.title, message.notification!.body, NotificationDetails( android: AndroidNotificationDetails( 'channel id', 'channel name', importance: Importance.high, playSound: true, icon: '@mipmap/ic_launcher', ), iOS: IOSNotificationDetails(), ), payload: 'data', ); }); } } void onDidReceiveLocalNotification() { print("object"); }
Editor is loading...