From 009199a1af267117690680ed61bef560bdf884dd Mon Sep 17 00:00:00 2001 From: liwei1dao Date: Wed, 9 Jul 2025 15:53:51 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E5=A4=A9=E6=B0=94=E5=8D=A1?= =?UTF-8?q?=E7=89=87=E7=9A=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/modules/agent/views/message_bubble.dart | 32 ++++++++++----------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/lib/modules/agent/views/message_bubble.dart b/lib/modules/agent/views/message_bubble.dart index 51f7cf8e2..825f6b2f1 100644 --- a/lib/modules/agent/views/message_bubble.dart +++ b/lib/modules/agent/views/message_bubble.dart @@ -1,7 +1,3 @@ -import 'dart:convert'; -import 'dart:ffi'; - -import 'package:common_utils/common_utils.dart'; import 'package:deep_voice/modules/agent/views/navigation_card.dart'; import 'weather_card.dart'; import 'music_card.dart'; @@ -9,7 +5,6 @@ import 'travel_card.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:intl/intl.dart'; -import 'package:get_storage/get_storage.dart'; import 'dart:io'; import 'package:flutter_markdown/flutter_markdown.dart'; @@ -257,18 +252,21 @@ class MessageBubble extends GetView { return buildMusicContent(context, playlist); } } else if (meta!.keys.contains('maps_weather')) { - final city = meta!['maps_weather']['city'] as String? ?? '未知城市'; - final rawList = meta!['maps_weather']['forecasts'] as List? ?? []; - final daylist = - rawList.map((e) => Map.from(e)).toList(); - final now = daylist.isNotEmpty ? daylist[0] : {}; - //天气 - return buildWeatherContent( - context, - city, - now, - daylist, - ); + final maps_weather = meta!['maps_weather'] as Map; + final city = maps_weather['city']; + if (city != null) { + final rawList = maps_weather['forecasts'] as List? ?? []; + final daylist = + rawList.map((e) => Map.from(e)).toList(); + final now = daylist.isNotEmpty ? daylist[0] : {}; + //天气 + return buildWeatherContent( + context, + city, + now, + daylist, + ); + } } else if (meta!.keys.contains('card_travel')) { final rawList = meta!['card_travel']['items'] as List? ?? []; final travellist =