Device Marketing Names
A simple device name lookup package. Map e.g. 'iPhone13,4' to 'iPhone 12 Pro Max' or 'SM-G980F' to 'Galaxy S20'. No internet connection or database required.
Features
- Lookup Android marketing names
- Lookup iOS (iPhone & iPad) marketing names
- Lookup web browser names
- Get the marketing name of the current device or by an already known Android or iOS model
- Relies on device_info_plus to get the current device model information on Android or iOS and device_identifiers which maps those to the marketing names. The browser name is forwarded directly from device_info_plus
Usage
Getting Started
Add this to your package's pubspec.yaml
file:
dependencies:
device_marketing_names: ^1.0.0
More information on pub.dev.
Examples
For full examples please see the example app.
final deviceNames = DeviceMarketingNames();
// Get one marketing name of the device.
final singleDeviceName = await deviceNames.getSingleName();
// Get all marketing names of the device.
final allDeviceNames = await deviceNames.getNames();
// Get one marketing name for the given model.
final singleDeviceNameFromModel = deviceNames.getSingleNameFromModel(DeviceType.android, "ONEPLUS A5010");
// Get all marketing names for the given model.
final allDeviceNamesFromModel = deviceNames.getNamesFromModel(DeviceType.android, "ONEPLUS A5010");
Migration from 0.3.0 to 0.4.0
- Replace
getMarketingName()
withgetSingleName()
if you want to get exactly one matching name. - Replace
getMarketingName()
withgetNames()
if you want all matching names as a single string. Names are separated by " / ". - Replace
getMarketingNameFromModel()
withgetSingleNameFromModel()
if you want to get exactly one matching name. - Replace
getMarketingNameFromModel()
withgetNamesFromModel()
if you want all matching names as a single string. Names are separated by " / ".
How to contribute
If you are interested in contributing, please have a look into the contribution guide. Every idea, bug report or line of code is heavily appreciated.