Flutter车辆信息解码插件vin_decoder的使用
Flutter车辆信息解码插件vin_decoder的使用
vin_decoder
是一个用于 Dart 的车辆识别号(VIN)解码、验证和生成库。它基于 ISO 3779:2009 和世界制造商标识符(WMIs)的 ISO 3780:2009 标准。该库可以独立离线使用(默认行为,与早期版本相同),也可以通过查询 NHTSA Vehicle API 来获取更多详细信息,例如具体的制造商、型号和车辆类型。
使用
以下是一个简单的使用示例:
import 'package:vin_decoder/vin_decoder.dart';
void main() async {
// 创建一个VIN对象,设置为扩展模式
var vin = VIN(number: 'WP0ZZZ99ZTS392124', extended: true);
// 打印VIN的各个部分
print('WMI: ${vin.wmi}');
print('VDS: ${vin.vds}');
print('VIS: ${vin.vis}');
// 打印VIN解码结果
print("Model year is " + vin.modelYear());
print("Serial number is " + vin.serialNumber());
print("Assembly plant is " + vin.assemblyPlant());
print("Manufacturer is " + vin.getManufacturer());
print("Year is " + vin.getYear().toString());
print("Region is " + vin.getRegion());
print("VIN string is " + vin.toString());
// 异步调用NHTSA数据库以获取更多信息
var make = await vin.getMakeAsync();
print("Make is ${make}");
var model = await vin.getModelAsync();
print("Model is ${model}");
var type = await vin.getVehicleTypeAsync();
print("Type is ${type}");
// 随机生成一个新的VIN
var generated = VINGenerator().generate();
print('Randomly Generated VIN is ${generated}');
}
运行上述代码将产生以下输出:
WMI: WP0
VDS: ZZZ99Z
VIS: TS392124
Model year is T
Serial number is 92124
Assembly plant is S
Manufacturer is Porsche
Year is 1996
Region is EU
VIN string is WP0ZZZ99ZTS392124
Make is Porsche
Model is 911
Type is Passenger Car
Randomly Generated VIN is NM4BW3NK0WA418856
特性和问题
如果您发现任何功能请求或错误,请在 问题追踪器 中提交。
许可证
此项目根据 Apache 2.0 许可证授权。完整的许可证文本可以在 LICENSE 文件中找到。
这是完整的示例代码:
import 'package:vin_decoder/vin_decoder.dart';
void main() async {
var vin = VIN(number: 'WP0ZZZ99ZTS392124', extended: true);
print('WMI: ${vin.wmi}');
print('VDS: ${vin.vds}');
print('VIS: ${vin.vis}');
print("Model year is " + vin.modelYear());
print("Serial number is " + vin.serialNumber());
print("Assembly plant is " + vin.assemblyPlant());
print("Manufacturer is " + vin.getManufacturer());
print("Year is " + vin.getYear().toString());
print("Region is " + vin.getRegion());
print("VIN string is " + vin.toString());
// 异步调用NHTSA数据库以获取更多信息
var make = await vin.getMakeAsync();
print("Make is ${make}");
var model = await vin.getModelAsync();
print("Model is ${model}");
var type = await vin.getVehicleTypeAsync();
print("Type is ${type}");
// 随机生成一个新的VIN
var generated = VINGenerator().generate();
print('Randomly Generated VIN is ${generated}');
}
更多关于Flutter车辆信息解码插件vin_decoder的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
更多关于Flutter车辆信息解码插件vin_decoder的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
vin_decoder
是一个用于解码车辆识别码(VIN)的 Flutter 插件。VIN 是一个唯一的 17 字符代码,用于识别车辆。通过解码 VIN,你可以获取车辆的详细信息,如制造商、车型、生产年份等。
以下是如何在 Flutter 项目中使用 vin_decoder
插件的步骤:
1. 添加依赖
首先,在 pubspec.yaml
文件中添加 vin_decoder
插件的依赖:
dependencies:
flutter:
sdk: flutter
vin_decoder: ^1.0.0 # 请检查最新版本
然后运行 flutter pub get
以安装依赖。
2. 导入插件
在你的 Dart 文件中导入 vin_decoder
插件:
import 'package:vin_decoder/vin_decoder.dart';
3. 解码 VIN
使用 VinDecoder
类来解码 VIN。以下是一个简单的示例:
void decodeVin(String vin) async {
try {
VinDecoder decoder = VinDecoder();
var result = await decoder.decode(vin);
if (result != null) {
print('Manufacturer: ${result.manufacturer}');
print('Model: ${result.model}');
print('Year: ${result.year}');
print('Plant: ${result.plant}');
print('Serial Number: ${result.serialNumber}');
print('Vehicle Type: ${result.vehicleType}');
print('Country: ${result.country}');
// 其他信息
} else {
print('Failed to decode VIN.');
}
} catch (e) {
print('Error decoding VIN: $e');
}
}
void main() {
String vin = '1HGCM82633A123456'; // 替换为你的VIN
decodeVin(vin);
}