<aside> 💡 Flutter의 경우 FCM(Firebase Cloud Messaging)을 통한 연동을 지원합니다. Push Notification 연동을 희망하는 경우 담당자를 통해 문의하세요.
</aside>
다음 문서를 통해 FCM을 설정하세요. 기존에 이미 FCM을 사용하는 경우 다음 단계로 이동하세요. https://firebase.google.com/docs/cloud-messaging/flutter/client
<aside> 🚨 한 번만 다운 받을 수 있으니, 안전히 보관해주세요.
</aside>
BuzzBooster의 Push Notification을 처리하려면 다음과 같이 작업하세요.
Android 13 이상과 iOS에서 Push Notification을 수신하기 위해선 유저의 권한이 필요합니다.
permission_handler 등의 라이브러리를 활용하여 각 플랫폼에 맞는 권한을 요청하세요.
import 'package:buzz_booster/buzz_booster.dart';
import 'package:firebase_messaging/firebase_messaging.dart';
final buzzBooster = BuzzBooster();
final String? token = await FirebaseMessaging.instance.getToken();
if (token != null) {
await buzzBooster.setPushToken(token);
}
FirebaseMessaging.onMessage.listen((RemoteMessage message) async {
final data = message.data;
if (await buzzBooster.isBuzzBoosterNotification(data)) {
await buzzBooster.handleNotification(data);
}
});
FirebaseMessaging.onMessageOpenedApp.listen((RemoteMessage message) async {
final data = message.data;
if (await buzzBooster.isBuzzBoosterNotification(data)) {
await buzzBooster.handleOnMessageOpenedApp(data);
}
});
RemoteMessage? message = await FirebaseMessaging.instance.getInitialMessage();
if (message != null) {
if (await buzzBooster.isBuzzBoosterNotification(message.data)) {
await buzzBooster.handleInitialMessage(message.data);
}
}