【发布时间】:2019-12-19 03:54:06
【问题描述】:
我正在设置 firebase 云消息传递,在我的 onResume() 回调中,我有以下内容:
Future<void> onResume(Map<String, dynamic> message) async {
final Map<String,dynamic> data = message['data'];
final String url = data['url'];
if (url != null) {
_webViewController?.loadUrl(url);
}
}
函数到达时final Map<String,dynamic> data = message['data'];
它会在没有警告的情况下过早地、静默地返回。
如果我改为运行final dynamic data = message['data'];
它按预期继续。
检查message 类型会发现message 是InternalLinkedHashMap 并且不能转换为Map<String, dynamic>。
上面写着_InternalLinkedHashMap<dynamic, dynamic>' is not a subtype of type 'Map<String, dynamic>'。
我该怎么做?
如果没有踪迹,以后如何找到这个问题?
【问题讨论】:
标签: flutter dart casting firebase-cloud-messaging linkedhashmap