当我尝试onBackgroundMessage
为 Flutter firebase 云消息传递添加回调函数时出现此错误。
颤振:在构建主屏幕(脏)时抛出以下参数错误:颤振:无效参数:无法设置后台消息处理程序!onBackgroundMessage
flutter: 应该是顶级或静态函数,不应绑定到 flutter: 类或匿名函数。flutter: flutter: 相关的导致错误的小部件是: flutter: HomeScreen flutter: file:///Users/sournvisal/Documents/projects/flutter-project/one_sala/lib/router.dart:17:39
请帮忙。谢谢。
hum*_*zed 26
正如错误所说,onBackgroundMessage
需要是顶级或静态功能
TOP-LEVEL 函数是在类之外的函数。例子:
Future<dynamic> myBackgroundMessageHandler(Map<String, dynamic> message) {
if (message.containsKey('data')) {
// Handle data message
final dynamic data = message['data'];
}
if (message.containsKey('notification')) {
// Handle notification message
final dynamic notification = message['notification'];
}
// Or do other work.
}
Run Code Online (Sandbox Code Playgroud)
STATIC FUNCTION是类内部的函数,但以static
关键字为前缀,并且不对实例进行操作,因此无法访问this
. 例子:
class Fcm {
static Future<dynamic> myBackgroundMessageHandler(Map<String, dynamic> message) {
if (message.containsKey('data')) {
// Handle data message
final dynamic data = message['data'];
}
if (message.containsKey('notification')) {
// Handle notification message
final dynamic notification = message['notification'];
}
// Or do other work.
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8346 次 |
最近记录: |