我使用flutter 1.0开发了一个应用程序。该应用程序可在大多数android和ios手机上正常运行。但是我发现有一部Android手机和一部iPhone无法打开该应用程序,只是显示错误消息“类型'_Smi'不是类型'double'的子类型”。有人可以告诉我我的应用程序正在运行什么。
打开Flutter应用程序时出现错误图片:
答案 0 :(得分:0)
我认为运行flutter clean
应该可以解决此问题。我总是在更换手机时运行它。
答案 1 :(得分:0)
没有相关的代码很难说,但就我而言,这是在尝试从Map分配双精度值时发生的。解决方法就是简单地在值上调用.toDouble:
// myMap is a Map<String, dynamic>
double myDouble = myMap['mykey'].toDouble();
以前没有.toDouble()可以工作,但是_Smi错误开始于一天发生。
答案 2 :(得分:0)
这帮助我从另一个API读取json。
double temp = weatherData['main']['temp'].toDouble();