[flutter] 플러터에서의 로컬 알림 설정 방법

플러터(Flutter) 애플리케이션에서 사용자에게 알림을 보내는 것은 애플리케이션의 사용자 경험을 향상시키는 데 도움이 됩니다. 이 기사에서는 플러터에서 로컬 알림을 설정하는 간단한 방법을 알아보겠습니다.

필수 패키지 추가

먼저, flutter_local_notifications 패키지를 사용하여 플러터 애플리케이션에 로컬 알림을 추가할 수 있습니다. 아래와 같이 pubspec.yaml 파일에 패키지를 추가합니다.

dependencies:
  flutter_local_notifications: ^X.X.X

위의 X.X.X는 현재 사용 중인 패키지의 버전을 나타냅니다. 원하는 버전으로 변경하여 사용할 수 있습니다. 패키지를 추가한 후에는 터미널에서 flutter pub get 명령을 실행하여 패키지를 다운로드하고 설치합니다.

알림 설정

다음으로, 로컬 알림을 설정하기 위해 필요한 기능을 구현해야 합니다. 예를 들어, 다음 코드는 특정 시간에 로컬 알림을 생성하는 기능을 구현한 것입니다.

import 'package:flutter_local_notifications/flutter_local_notifications.dart';

Future<void> scheduleNotification() async {
  var scheduledNotificationDateTime = DateTime.now().add(Duration(seconds: 5));

  var androidPlatformChannelSpecifics = AndroidNotificationDetails(
    'channel_id',
    'channel_name',
    'channel_description',
    icon: 'app_icon',
    largeIcon: DrawableResourceAndroidBitmap('app_icon'),
  );
  var iOSPlatformChannelSpecifics = IOSNotificationDetails();
  var platformChannelSpecifics = NotificationDetails(
      android: androidPlatformChannelSpecifics, iOS: iOSPlatformChannelSpecifics);
  await flutterLocalNotificationsPlugin.schedule(
    0,
    'Title',
    'Description',
    scheduledNotificationDateTime,
    platformChannelSpecifics,
  );
}

위의 코드는 flutter_local_notifications 패키지를 사용하여 5초 후에 로컬 알림을 예약하는 기능을 구현한 것입니다.

알림 표시

마지막으로, 알림을 실제로 표시해야 합니다. 앱의 메인 화면 또는 특정 페이지에서 다음 코드를 사용하여 알림을 표시할 수 있습니다.

import 'package:flutter_local_notifications/flutter_local_notifications.dart';

void showNotification() async {
  var androidPlatformChannelSpecifics = new AndroidNotificationDetails(
    'channel_id',
    'channel_name',
    'channel_description',
    icon: 'app_icon',
    sound: RawResourceAndroidNotificationSound('notification_sound'),
    largeIcon: DrawableResourceAndroidBitmap('app_icon'),
  );
  var iOSPlatformChannelSpecifics = IOSNotificationDetails();
  var platformChannelSpecifics = NotificationDetails(
      android: androidPlatformChannelSpecifics, iOS: iOSPlatformChannelSpecifics);
  await flutterLocalNotificationsPlugin.show(
    0,
    'Title',
    'Description',
    platformChannelSpecifics,
  );
}

위의 코드는 앱에서 버튼 또는 이벤트를 트리거로 로컬 알림을 표시하는 방법을 보여줍니다.

이제 플러터(Flutter)로 로컬 알림을 설정하는 기초적인 방법을 알아보았습니다. 알림의 외관 및 동작을 사용자 정의하고, 트리거 이벤트에 따라 알림을 표시하는 방법 등을 추가로 학습해 보시기 바랍니다.

더 많은 정보는 flutter_local_notifications 패키지 문서를 참고하세요.