initNotifications function

Future<void> initNotifications()

Implementation

Future<void> initNotifications() async {
  try {
    // Listener setzen
    await AwesomeNotifications().setListeners(
      onActionReceivedMethod: _onActionReceivedMethod,
      onNotificationCreatedMethod: _onNotificationCreatedMethod,
    );

    // Prüfen ob Benachrichtigungen erlaubt sind
    final isAllowed = await AwesomeNotifications().isNotificationAllowed();
    if (!isAllowed) {
      debugPrint(
          'Benachrichtigungen sind nicht erlaubt, fordere Berechtigung an...');
      final requestResult =
          await AwesomeNotifications().requestPermissionToSendNotifications();

      if (requestResult) {
        debugPrint('Benachrichtigungen wurden erlaubt!');
        // Nach der Erlaubnis Kanäle neu initialisieren
        await reinitializeNotificationChannels();
      } else {
        debugPrint('Benachrichtigungen wurden abgelehnt');
      }
    } else {
      debugPrint('Benachrichtigungen sind bereits erlaubt');
      // Auch wenn sie bereits erlaubt sind, Kanäle neu initialisieren
      await reinitializeNotificationChannels();
    }
  } catch (e) {
    debugPrint('Fehler beim Initialisieren der Benachrichtigungen: $e');
  }
}