initialize static method

Future<bool> initialize()

Initialize the local notifications plugin

Implementation

static Future<bool> initialize() async {
  if (kIsWeb) {
    JetLogger.info("Local notifications are not supported on the web");
    return false;
  }

  // Initialize timezone data
  tz.initializeTimeZones();

  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,
      );

  try {
    await _localNotifications.initialize(
      initializationSettings,
      onDidReceiveNotificationResponse: _onNotificationTapped,
    );

    dump(
      "Jet Notifications initialized successfully",
      tag: "JET NOTIFICATIONS",
    );
    return true;
  } catch (e) {
    JetLogger.error("Failed to initialize local notifications: $e");
    return false;
  }
}