升级Google_Map_Flutter至2.0.6后部分函数提示未定义如何解决
google_maps_flutter 2.0.6版本类未定义问题解决步骤
- 修正类名拼写:官方2.0.6版本对应类名分别为
MapType(你使用的Maptype末尾t为小写,属于拼写错误)、CameraPosition(拼写正确)、LatLng(你使用的LatLong多了字母o,属于拼写错误),修正类名后优先排查标红是否消失。 - 核对导入语句:确保项目文件头部的导入语句为
import 'package:google_maps_flutter/google_maps_flutter.dart';,包名拼写错误、路径错误都会导致类无法识别。 - 清理缓存重新拉取依赖:在项目根目录依次执行以下命令:
命令执行完成后重启IDE再查看问题是否解决。flutter clean flutter pub get - 核对pubspec.yaml依赖配置:确认依赖项声明格式、拼写、版本号正确,yaml格式对缩进要求严格,注意缩进为2个空格:
dependencies: flutter: sdk: flutter google_maps_flutter: ^2.0.6 - 检查Flutter SDK版本兼容性:google_maps_flutter 2.0.6要求Flutter SDK版本≥2.10.0,执行
flutter --version可查看当前SDK版本,版本低于要求时升级Flutter SDK即可。 - 排查命名冲突:如果以上操作完成后问题依旧存在,检查是否有自定义类、其他导入的包和这三个类重名导致冲突,出现冲突时可以给google_maps_flutter包指定前缀使用:
import 'package:google_maps_flutter/google_maps_flutter.dart' as gmf; // 使用示例 final mapType = gmf.MapType.normal; final latLng = gmf.LatLng(39.9, 116.3);
内容的提问来源于stack exchange,提问作者Fuse Koda
相关产品推荐
相关产品推荐

