본문 바로가기
Flutter

flutter alarm 알람 라이브러리 pub.dev에서 사용해보기

by 난타코다옹 2023. 9. 29.

목차

    알람 앱을 만들기 위해서 알람 기능을 구현하는 것이 필수겠죠?! 다른 앱을 만들더라도 알람 기능이 필요하다거나 추가하면 좋을 경우에 사용하면 좋습니다.

     

    특히 1분 1초가 중요한 오늘날 빠르게 진행되는 세상에서 효과적인 시간 관리는 매우 중요니까요. 폰에서 가장 가치 있는 도구 중 하나는 알람 어플리케이션이죠. 우리는 더 이상 전통적인 알람 시계에만 의존하지 않기 때문에 알람 라이브러리 사용법을 알아야만 합니다.

     

    이 글에서는, 우리는 알람의 세계를 자세히 살펴보고 프로젝트를 향상시키기 위해 https://pub.dev/ 알람 라이브러리를 사용하는 방법에 대해 알아보도록 할게요!

     

    pub.dev에 들어가서 alarm 을 검색해보면 나오는 라이브러리 중에 두가지 alarm이 가장 인기있는데요

     

    pub.dev alarm 검색시 나오는 라이브러리 top2

    아래 android_alarm_manager_plus는 안드로이드만 가능해서 위의 alarm을 사용해보겠습니다. 

    like 141개 정도네요!

     

    알람 라이브러리 사용을 시작하려면 프로젝트에 알람 라이브러리를 추가해야 합니다.

     

    알람 라이브러리 설치

    첫 번째 단계는 설치입니다. 이 작업은 다음 명령어를 실행하여 수행할 수 있습니다

     

    dependencies:
      flutter:
        sdk: flutter
      flutter_local_notifications: ^5.3.0

    terminal 터미널에서 다음 명령어로도 가능합니다. 

    flutter pub add alarm

     

    이후 main 함수에서 초기화를 진행해주어야 실행되는데요

    await Alarm.init()

    저는 이렇게 했답니다. 

    void main() async {
      WidgetsBinding widgetsBinding = WidgetsFlutterBinding.ensureInitialized();
    
      FlutterNativeSplash.preserve(widgetsBinding: widgetsBinding);
    
      await Firebase.initializeApp(
        options: DefaultFirebaseOptions.currentPlatform,
      );
      MobileAds.instance.initialize();
      
      await Alarm.init(showDebugLogs: true);
    
      runApp(const ProviderScope(
        child: WakeUpHoney(),
      ));
    }

    알람 설정은 다음과 같이 할 수 있어요

    final alarmSettings = AlarmSettings(
      id: 42,
      dateTime: dateTime,
      assetAudioPath: 'assets/alarm.mp3',
      loopAudio: true,
      vibrate: true,
      volumeMax: true,
      fadeDuration: 3.0,
      notificationTitle: 'This is the title',
      notificationBody: 'This is the body',
      enableNotificationOnKill: true,
    );

    위와 같이 설정 후에 

    await Alarm.set(alarmSettings: alarmSettings)

    하면 알람이 설정됩니다. 

     

    예시를 사용하면 alarm home 에 방금 설정한 알람이 시간과 함께 보일거에요

     

    다음 링크에서 예시파일을 확인해 볼 수 있어요 example 폴더를 실행시켜보면 됩니다. 

    https://github.com/gdelataillade/alarm

     

    GitHub - gdelataillade/alarm: A Flutter plugin to easily manage alarms on iOS and Android

    A Flutter plugin to easily manage alarms on iOS and Android - GitHub - gdelataillade/alarm: A Flutter plugin to easily manage alarms on iOS and Android

    github.com