device_info_gigachad 0.3.0
device_info_gigachad: ^0.3.0 copied to clipboard
This plugin will let you get device information synchronously via ffi.
import 'package:device_info_gigachad/device_info_gigachad.dart';
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
late final DeviceInfo _deviceInfo;
@override
void initState() {
super.initState();
_deviceInfo = DeviceInfoGigachad.getInfo();
}
@override
Widget build(BuildContext context) {
final deviceInfo = _deviceInfo;
return MaterialApp(
home: Scaffold(
appBar: AppBar(title: const Text('Plugin example app')),
body: SafeArea(
child: ListView(
children: <Widget>[
...switch (deviceInfo) {
AndroidDeviceInfo() => <Widget>[
Text('Android info'),
Text('baseOS: ${deviceInfo.version.baseOS}'),
Text('codename: ${deviceInfo.version.codename}'),
Text('incremental: ${deviceInfo.version.incremental}'),
Text('mediaPerformanceClass: ${deviceInfo.version.mediaPerformanceClass}'),
Text('previewSdkInt: ${deviceInfo.version.previewSdkInt}'),
Text('release: ${deviceInfo.version.release}'),
Text('releaseOrCodename: ${deviceInfo.version.releaseOrCodename}'),
Text('releaseOrPreviewDisplay: ${deviceInfo.version.releaseOrPreviewDisplay}'),
Text('sdkInt: ${deviceInfo.version.sdkInt}'),
Text('sdkIntFull: ${deviceInfo.version.sdkIntFull}'),
Text('securityPatch: ${deviceInfo.version.securityPatch}'),
],
IosDeviceInfo() => <Widget>[
Text('iOS info'),
Text('UIDevice'),
Text('name: ${deviceInfo.uiDevice.name}'),
Text('systemName: ${deviceInfo.uiDevice.systemName}'),
Text('systemVersion: ${deviceInfo.uiDevice.systemVersion}'),
Text('model: ${deviceInfo.uiDevice.model}'),
Text('localizedModel: ${deviceInfo.uiDevice.localizedModel}'),
Text('identifierForVendor: ${deviceInfo.uiDevice.identifierForVendor}'),
Text('ProcessInfo'),
Text('isMacCatalystApp: ${deviceInfo.processInfo.isMacCatalystApp}'),
Text('isIosAppOnMac: ${deviceInfo.processInfo.isIosAppOnMac}'),
],
},
],
),
),
),
);
}
}