2023. 5. 31. 22:13ㆍ모바일어플개발/Flutter
안녕하세요~ totally 개발자입니다.
flutter_local_notification
예전 포스팅인 https://totally-developer.tistory.com/88 여기에서 푸시 알림에 관해 간단하게 살펴보았습니다. 이번 포스팅에서는 푸시 알림을 받고 난 후 알림을 탭 했을 때, 앱이 열리고 특정 페이지로 가는 방법에 대해서 소개하고자 합니다. 먼저 위에 있는 푸시 알림 세팅은 미리 되어 있다고 가정할 것이니 세팅이 되지 않으신 분들은 위에 있는 링크로 가셔서 세팅을 먼저 마무리해주시기 바랍니다.
Step 1: notification.dart 파일을 아래와 같이 작성합니다.
여기에서 중요한 부분은 아래 부분입니다. 주석에 설명을 달아 놓았습니다. 다만 제 테스트에 의하면 Foreground는 안드로이드, iOS 모두 작동되나 background 부분은 안드로이드만 제대로 작동되며 iOS의 경우, 앱이 완전히 꺼진 경우에는 앱은 켜지나 아래 메소드가 제대로 작동되지 않습니다. (추후 방법이 있는 경우 수정하도록 하겠습니다.) 여기에서 핵심 부분은 stream을 활용한다는 것입니다. Stream의 add를 통해 payload(전달 데이터)를 전달해서 조건을 알 수 있도록 합니다.
Step 2: main.dart를 작성합니다. 여기에서는 StreamController 전역 변수 선언하시고 아래 순서대로 작성하시면 됩니다.
Step 3: second.dart 페이지를 작성합니다.
안드로이드 실기기로 테스트도 진행했는데 아래처럼 둘 다 Foreground, Background 부분을 터미널에서도 확인해볼 수 있습니다.