device_info_plus 11.1.1 copy "device_info_plus: ^11.1.1" to clipboard
device_info_plus: ^11.1.1 copied to clipboard

Flutter plugin providing detailed information about the device (make, model, etc.), and Android or iOS version the app is running on.

device_info_plus #

pub package pub points device_info_plus

Get current device information from within the Flutter application.

Platform Support #

Android iOS MacOS Web Linux Windows

Requirements #

  • Flutter >=3.3.0
  • Dart >=3.3.0 <4.0.0
  • iOS >=12.0
  • MacOS >=10.14
  • Android compileSDK 34
  • Java 17
  • Android Gradle Plugin >=8.3.0
  • Gradle wrapper >=8.4

Usage #

Import package:device_info_plus/device_info_plus.dart, instantiate DeviceInfoPlugin and use the Android and iOS, Web getters to get platform-specific device information.

Example:

import 'package:device_info_plus/device_info_plus.dart';

DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo;
print('Running on ${androidInfo.model}');  // e.g. "Moto G (4)"

IosDeviceInfo iosInfo = await deviceInfo.iosInfo;
print('Running on ${iosInfo.utsname.machine}');  // e.g. "iPod7,1"

WebBrowserInfo webBrowserInfo = await deviceInfo.webBrowserInfo;
print('Running on ${webBrowserInfo.userAgent}');  // e.g. "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:61.0) Gecko/20100101 Firefox/61.0"

The plugin provides a data method that returns platform-specific device information in a generic way, which can be used for crash-reporting purposes.

However, the data provided by this data method is currently not serializable (i.e. it is not 100% JSON compatible) and shouldn't be treated as such.

import 'package:device_info_plus/device_info_plus.dart';

final deviceInfoPlugin = DeviceInfoPlugin();
final deviceInfo = await deviceInfoPlugin.deviceInfo;
final allInfo = deviceInfo.data;

Android #

To get serial number on Android your app needs to meet one of official requirements. In case the app doesn't meet any of requirements plugin will return unknown.

iOS #

The name property exposes the assigned device name by the owner. This value is obtained from the property UIDevice.current.name. This property requires special entitlement com.apple.developer.device-information.user-assigned-device-name in iOS 16 and later, otherwise, the property name will always be iPad or iPhone.

Learn more #

2657
likes
150
pub points
100%
popularity

Publisher

verified publisherfluttercommunity.dev

Flutter plugin providing detailed information about the device (make, model, etc.), and Android or iOS version the app is running on.

Homepage
Repository (GitHub)
View/report issues
Contributing

Topics

#device #information #utils

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

device_info_plus_platform_interface, ffi, file, flutter, flutter_web_plugins, meta, web, win32, win32_registry

More

Packages that depend on device_info_plus