Files
prosappco/lib/src/services/local_notifications.dart
T
2023-10-23 18:31:01 -05:00

48 lines
1.8 KiB
Dart

import 'package:flutter_local_notifications/flutter_local_notifications.dart';
import 'package:prosappco/src/services/firebase_messaging.dart';
final FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin =
FlutterLocalNotificationsPlugin();
Future<void> initNotifications() async {
const AndroidInitializationSettings initializationSettingsAndroid =
AndroidInitializationSettings('@mipmap/ic_launcher');
const DarwinInitializationSettings initializationSettingsIOS =
DarwinInitializationSettings(
requestAlertPermission: true,
requestBadgePermission: true,
requestSoundPermission: true,
);
const InitializationSettings initializationSettings = InitializationSettings(
android: initializationSettingsAndroid,
iOS: initializationSettingsIOS,
);
await flutterLocalNotificationsPlugin.initialize(initializationSettings);
// Inicializar Firebase Messaging
FirebaseMessagingService firebaseMessagingService =
FirebaseMessagingService();
await firebaseMessagingService.initializeFirebaseMessaging();
}
Future<void> showNotification(String title, String body) async {
const AndroidNotificationDetails androidNotificationDetails =
AndroidNotificationDetails('solicitud_servicio', 'Solicitud de Servicio',
importance: Importance.max, priority: Priority.high);
// IOSNotificationDetails --> DarwinNotificationDetails
const DarwinNotificationDetails iOSNotificationDetails =
DarwinNotificationDetails(
presentAlert: true,
presentBadge: true,
presentSound: true,
);
const NotificationDetails notificationDetails = NotificationDetails(
android: androidNotificationDetails, iOS: iOSNotificationDetails);
await flutterLocalNotificationsPlugin.show(
1, title, body, notificationDetails);
}