1

I've tried several ways to get the model number out of a Sony Android TV like Build.model and Build.name but it returns me something like the name of the Tv (i.e Bravia 2015) What I need is the full model number of that particular tv (i.e KDL-50W800C) Please let me know how to do this.

Pushpendra
  • 2,791
  • 4
  • 26
  • 49

1 Answers1

1

Short Answer:

Build.FINGERPRINT will probably have what you are looking for and then some. Snippet below from android/os/Build.java:

/** A string that uniquely identifies this build.  Do not attempt to parse this value. */
public static final String FINGERPRINT = deriveFingerprint();

/**
 * Some devices split the fingerprint components between multiple
 * partitions, so we might derive the fingerprint at runtime.
 */
private static String deriveFingerprint() {
    String finger = SystemProperties.get("ro.build.fingerprint");
    if (TextUtils.isEmpty(finger)) {
        finger = getString("ro.product.brand") + '/' +
                getString("ro.product.name") + '/' +
                getString("ro.product.device") + ':' +
                getString("ro.build.version.release") + '/' +
                getString("ro.build.id") + '/' +
                getString("ro.build.version.incremental") + ':' +
                getString("ro.build.type") + '/' +
                getString("ro.build.tags");
    }
    return finger;
}

Long Answer:

It should be in the readable system properties (most likely one of those above). However its worth noting its not guaranteed to be populated consistently on all devices/builds.

Here are a few ways to pull the data:

  1. Programmatically via android/os/Build.java - for a finite set of properties, as you did above

  2. Programmatically via java.lang.System.getProperty - using getProperties(optional string)

  3. Outside of runtime just to debug/see whats up via terminal$ adb shell getprop - which'll print em all out

Here are some examples (1st emulator, 2nd custom-built TV STB)

[ro.build.fingerprint]: [generic_x86/sdk_google_atv_x86/generic_x86:5.1.1/LMY48X/2916408:userdebug/test-keys]
[ro.build.product]: [generic_x86]
[ro.build.id]: [LMY48X]
[ro.hardware]: [ranchu]
[ro.product.brand]: [generic_x86]
[ro.product.device]: [generic_x86]
[ro.product.manufacturer]: [unknown]
[ro.product.model]: [sdk_google_atv_x86]
[ro.product.name]: [sdk_google_atv_x86]

[ro.build.fingerprint]: [Android/p202/p202:5.1.1/LMY44V/20170215:userdebug/release-keys]
[ro.build.product]: [p202]
[ro.build.id]: [LMY44V]
[ro.hardware]: [amlogic]
[ro.product.brand]: [Alta]
[ro.product.device]: [p202]
[ro.product.manufacturer]: [AltaDigital]
[ro.product.model]: [H4401]
[ro.product.name]: [p202]
[ro.stb.chip]: [AMLOGICS905]

I'm not sure if/where all of the android os system properties can be found, and if somebody knows please add, but here are links for some of the system properties:

Adding A New Device, DeviceSelectionOptions

gfunk
  • 381
  • 1
  • 14