initialize static method

Future<void> initialize()

Implementation

static Future<void> initialize() async {
  try {
    const AndroidInitializationSettings initializationSettingsAndroid =
        AndroidInitializationSettings('@mipmap/launcher_icon');

    // Note: iOS initialization can be added here if needed
    const InitializationSettings initializationSettings =
        InitializationSettings(android: initializationSettingsAndroid);

    await _notificationsPlugin.initialize(
      settings: initializationSettings,
    );

    // Create Android channel
    const AndroidNotificationChannel channel = AndroidNotificationChannel(
      'airpass_messages_channel',
      'New Messages',
      description: 'Notifications for new mesh network messages',
      importance: Importance.max,
      enableVibration: true,
    );

    final platformPlugin =
        _notificationsPlugin.resolvePlatformSpecificImplementation<
          AndroidFlutterLocalNotificationsPlugin
        >();
    if (platformPlugin != null) {
      await platformPlugin.createNotificationChannel(channel);
    }
    AirpassLogger.log('NotificationHelper', 'Initialized successfully');
  } catch (e) {
    AirpassLogger.log('NotificationHelper', 'Initialization failed: $e');
  }
}