此信息可能对那些正在为 Web 开发并需要为 Android 设备进行部署的人有用。
通过处理double
来自 json 模型的数据类型,我在真正的 Android 手机(不是任何模拟器)上运行的颤振应用程序中遇到了以下错误:
类型“_Smi”不是类型“double”的子类型
网页版没有出现这个错误,我没有尝试IOS(因为我没有任何IOS设备)。另外,我没有在任何模拟器上进行测试。
这是我的模型:
class ModelExample {
int id;
String name;
double percentRank;
ModelExample({
this.id,
this.name,
this.percentRank,
});
factory ModelExample.fromJson(Map<String, dynamic> json) {
return ModelExample(
id: json['id'] as int,
name: json['api_name'] as String,
percentRank: json['api_percent_rank'] as double,
);
}
Map<String, dynamic> toJson() => {
'id': id.toString(),
'api_name': name,
'api_percent_rank': percentRank.toString(),
};
}
我的环境是:
- Flutter(Channel stable,2.0.5,在 Microsoft Windows [版本 10.0.19042.928],语言环境 en-US)
- 飞镖版本 2.12.3
- Android 工具链 - 为 Android 设备开发(Android SDK 版本 30.0.3)
- Java版OpenJDK运行环境(build 1.8.0_242-release-1644-b01)
- Android Studio(版本 4.1.0)
我怎样才能摆脱这个错误?