Files
fcs/lib/model/messaging.dart
2020-05-29 07:45:27 +06:30

36 lines
1.2 KiB
Dart

import 'package:firebase_messaging/firebase_messaging.dart';
import 'package:logging/logging.dart';
import 'package:fcs/vo/user.dart';
class MessagingFCM {
final log = Logger('MessagingFCM');
final FirebaseMessaging _firebaseMessaging = FirebaseMessaging();
MessagingFCM(User user) {
_firebaseMessaging.configure(
onMessage: (Map<String, dynamic> message) async {
log.info("onMessage: $message");
},
// onBackgroundMessage: backgroundMessageHandler,
onLaunch: (Map<String, dynamic> message) async {
log.info("onLaunch: $message");
},
onResume: (Map<String, dynamic> message) async {
log.info("onResume: $message");
},
);
_firebaseMessaging.requestNotificationPermissions(
const IosNotificationSettings(
sound: true, badge: true, alert: true, provisional: true));
_firebaseMessaging.onIosSettingsRegistered
.listen((IosNotificationSettings settings) {
log.info("Settings registered: $settings");
});
_firebaseMessaging.getToken().then((String token) {
log.info("Token:$token");
});
_firebaseMessaging.subscribeToTopic(user.docID);
}
}