接收方 FCM 通知点击事件
Posted
技术标签:
【中文标题】接收方 FCM 通知点击事件【英文标题】:Receiver FCM notification click event 【发布时间】:2019-08-31 04:40:07 【问题描述】:flutter如何接收通知点击事件?
我在 main.dart 上写了这段代码,但是 onMessage 处理事件不起作用。
此代码块也不能在后台运行。
当应用在后台 onMessage 函数不处理时。
main.dart
FirebaseMessaging _firebaseMessaging = FirebaseMessaging();
void ios_Permission()
_firebaseMessaging.requestNotificationPermissions(
IosNotificationSettings(sound: true, badge: true, alert: true)
);
_firebaseMessaging.onIosSettingsRegistered
.listen((IosNotificationSettings settings)
print("Settings registered: $settings");
);
void firebaseCloudMessaging_Listeners(BuildContext context)
if (Platform.isIOS) iOS_Permission();
_firebaseMessaging.getToken().then((token)
print("Token : $token");
);
_firebaseMessaging.configure(
onMessage: (Map<String, dynamic> message) async
print('on message $message');
,
onResume: (Map<String, dynamic> message) async
print('on resume $message');
,
onLaunch: (Map<String, dynamic> message) async
Navigator.pushNamed(context, "/");
print('on launch $message');
,
);
void main()
print("uygulama Acildi");
debugPaintSizeEnabled = false;
runApp(MaterialApp(
localizationsDelegates: [
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
],supportedLocales: [
const Locale('tr', 'TR'),
],
theme: ThemeData(fontFamily: 'Oswald'),
initialRoute: '/',
routes: <String, WidgetBuilder>
// '/': (context) => SanalPulHareketleri(),
'/': (context) => SplashEkrani(),
'/kayit_ol': (context) => KayitOl(),
,
));
【问题讨论】:
【参考方案1】:onMessage 在您收到通知并且前台应用程序正在运行时触发。
请查看 onResume 和 onLaunch 回调。 更多信息您可以找到on the library page
【讨论】:
以上是关于接收方 FCM 通知点击事件的主要内容,如果未能解决你的问题,请参考以下文章
android 对话框Dialog拦截activity事件通知
android 对话框Dialog拦截activity事件通知
android 对话框Dialog拦截activity事件通知