目录
本教程教大家如何在Flutter中获取设备信息。
可随意转载!
创建项目
命令行执行以下命令:
flutter create -a java -i objc ability_device_info
创建flutter项目,并且指定Android平台的编程语言为Java,iOS平台的编程语言为Objective-C。
打开Android Studio,选择Open an exist Android Studio Project
配置项目
编辑flutter配置文件pubspec.yaml ,如下图:
编写main.dart
1. import依赖包
import 'dart:async';
import 'dart:io';
import 'package:flutter/services.dart';
import 'package:device_info/device_info.dart';
2. 定义类变量
Map<String, dynamic> _deviceData = <String, dynamic>{};
3. 获取插件返回的deviceData
Future<void> initPlatformState() async {
Map<String, dynamic> deviceData;
try {
deviceData = _readAndroidBuildData(await deviceInfoPlugin.androidInfo);
} on PlatformException {
deviceData = <String, dynamic>{
'Error:': 'Failed to get platform version.'
};
}
if (!mounted) return;
setState(() {
_deviceData = deviceData;
});
}
Map<String, dynamic> _readAndroidBuildData(AndroidDeviceInfo build) {
return <String, dynamic>{
'version.sdkInt': build.version.sdkInt,
'version.release': build.version.release,
'model': build.model,
};
}
4. 定义Flutter的UI
省略,请看源码
真机调试
可以看到我的手机型号是NX563J;Android 9; sdk 28。
机型适配问题
无,适配所有Android和iOS机型