AndroidDeviceNames

A small Android library to get the market name of an Android device.

Github stars Tracking Chart

Android Device Names

Maven Central License API Twitter Follow

A small Android library to get the market name of an Android device.

On many popular devices the market name of the device is not available. For example, on the Samsung Galaxy S7 the value of Build.MODEL could be "SAMSUNG-SM-G930A", "SM-G930F", "SM-G930K", "SM-G930L", etc.

This small library gets the market (consumer friendly) name of a device.

Usage

Setup the library

DeviceName.init(this);

Get the name of the current device:

String deviceName = DeviceName.getDeviceName();

The above code will get the correct device name for the top 600 Android devices. If the device is unrecognized, then Build.MODEL is returned. This can be executed from the UI thread.

Get the name of a device using the device's codename:

// Retruns "Moto X Style"
DeviceName.getDeviceName("clark", "Unknown device");

Get information about the device:

DeviceName.with(context).request(new DeviceName.Callback() {

  @Override public void onFinished(DeviceName.DeviceInfo info, Exception error) {
    String manufacturer = info.manufacturer;  // "Samsung"
    String name = info.marketName;            // "Galaxy S8+"
    String model = info.model;                // "SM-G955W"
    String codename = info.codename;          // "dream2qltecan"
    String deviceName = info.getName();       // "Galaxy S8+"
    // FYI: We are on the UI thread.
  }
});

The above code queries a database included in the library based on Google's maintained list
. This supports over 27,000 devices.

Download

Download the latest AAR or grab via Gradle:

compile 'com.jaredrummler:android-device-names:2.0.0'

License

Copyright (C) 2015 Jared Rummler

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Main metrics

Overview
Name With Ownerjaredrummler/AndroidDeviceNames
Primary LanguageJava
Program languageJava (Language Count: 2)
Platform
License:Apache License 2.0
所有者活动
Created At2015-09-28 19:50:36
Pushed At2022-12-06 15:29:43
Last Commit At2022-11-28 09:59:08
Release Count0
用户参与
Stargazers Count1.4k
Watchers Count57
Fork Count182
Commits Count235
Has Issues Enabled
Issues Count49
Issue Open Count25
Pull Requests Count7
Pull Requests Open Count3
Pull Requests Close Count8
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private