因此,我的应用程序要求我存储通知,以便用户稍后可以在屏幕上看到它们。
无论应用程序是在运行、后台还是终止,在android上一切都很好。对于ios,我可以在应用程序运行时捕捉到通知。
但问题是,每当应用程序终止时,我仍然可以发送ios通知,设备显示通知,但数据负载没有注册(如果应用程序被终止,但用户点击通知并启动应用程序,它也会起作用(
以下是fcm配置代码show notification,它只是显示通知的本地通知插件,并将通知保存在共享首选项中。
_fcm.configure(
onBackgroundMessage: Platform.isIOS ? null : backgroundMessageHandler,
onMessage: (Map<String, dynamic> message) async {
logger.d("onMessage: $message");
try {
showNotifications(message);
} catch (e) {
print('PushNotificationService.initialise error: $e');
}
},
onLaunch: (Map<String, dynamic> message) async {
logger.d("onLaunch: $message");
showNotifications(message);
},
onResume: (Map<String, dynamic> message) async {
try {
logger.d("onResume: $message");
showNotifications(message);
} catch (e) {
print('PushNotificationService.initialise e: $e');
}
},
);
那么,即使ios应用程序被终止,也有办法捕获和处理数据负载吗。
您需要在Xcode的签名和功能部分添加推送通知的功能。