如何解码android.os.Build.SERIAL? [英] how to decode android.os.Build.SERIAL?

查看:412
本文介绍了如何解码android.os.Build.SERIAL?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在处理定期序列号主题以提供唯一ID。

I'm working on the recurring serial number topic to provide a unique id.

我试试这个:

       String serial = null; 

        try {
            Class<?> c = Class.forName("android.os.SystemProperties");
            Method get = c.getMethod("get", String.class);
            serial = (String) get.invoke(c, "ro.serialno");
        } catch (Exception ignored) {
        }

        StringBuilder sb = new StringBuilder();
        sb.append("SERIAL ").append(android.os.Build.SERIAL).append("\n");


        textReportAdmin.setText(
                sb.toString());

两者都给出相同的值: C4F12FDD949F22F

Both gives the same value : C4F12FDD949F22F

在标签栏和标签上,序列号为: RF2C202WYME

On the box and on the sticker of my tab, the serial number is : RF2C202WYME

我在标签上工作,无法使用

I work on a tab, no way to use

    TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
    String imei = telephonyManager.getDeviceId();

在我的情况下,IMEI是空的。

IMEI is empty in my case.

SERIAL是我需要的,但是我需要它在标签后面的条形码贴纸上显示的清晰版本。

SERIAL is what I need, but I need it in clear version as displayed on the sticker upon the barcode behind the tab.

我想这是可能的,当去的时候在系统应用程序中,并查看设备的状态,它显示为清除...

I guess it is possible as, When going in the system app, and looking at the state of the device, it is displayed in clear...

如何转换android.os.Build返回的值。串行到人类可见的?

How to convert the value returned by android.os.Build.SERIAL to the human visible one ?

EDITION:我也查了:

EDITION : I also looked in :

        sb.append("PRODUCT ").append(android.os.Build.PRODUCT).append("\n");
        sb.append("BOARD ").append(android.os.Build.BOARD).append("\n");
        sb.append("BOOTLOADER ").append(android.os.Build.BOOTLOADER).append("\n");
        sb.append("BRAND ").append(android.os.Build.BRAND).append("\n");
        sb.append("CPU_ABI ").append(android.os.Build.CPU_ABI).append("\n");
        sb.append("CPU_ABI2 ").append(android.os.Build.CPU_ABI2).append("\n");
        sb.append("DEVICE ").append(android.os.Build.DEVICE).append("\n");
        sb.append("DISPLAY ").append(android.os.Build.DISPLAY).append("\n");
        sb.append("FINGERPRINT ").append(android.os.Build.FINGERPRINT).append("\n");
        sb.append("HARDWARE ").append(android.os.Build.HARDWARE).append("\n");
        sb.append("HOST ").append(android.os.Build.HOST).append("\n");
        sb.append("ID ").append(android.os.Build.ID).append("\n");
        sb.append("MANUFACTURER ").append(android.os.Build.MANUFACTURER).append("\n");
        sb.append("MODEL ").append(android.os.Build.MODEL).append("\n");
        sb.append("PRODUCT ").append(android.os.Build.PRODUCT).append("\n");
        sb.append("RADIO ").append(android.os.Build.RADIO).append("\n");
        sb.append("SERIAL ").append(android.os.Build.SERIAL).append("\n");
        sb.append("TAGS ").append(android.os.Build.TAGS).append("\n");
        sb.append("TIME ").append(android.os.Build.TIME).append("\n");
        sb.append("TYPE ").append(android.os.Build.TYPE).append("\n");
        sb.append("USER ").append(android.os.Build.USER).append("\n");

无处,我得到贴纸上的序列号,同时可以找到,系统本身能够在参数,关于,状态中显示它(我不知道英文单词,我有法语标签,它是Paramètres,A propos de, Etat,然后是序列号,清晰版,如贴纸一样。

nowhere, I get the serialnumber as on the sticker, while it can be possible to be found as ,the system itself is able to display it in "Parameters", "About", "State" (I don't know the words in english, I have a french tab, and it is "Paramètres", "A propos de", "Etat" and then "Serial Number", the clear version, as on the sticker.

推荐答案

你试过这个吗? / p>

Have you tried this?

String serial = null; 

try {
     Class<?> c = Class.forName("android.os.SystemProperties");
     Method get = c.getMethod("get", String.class);
     serial = (String) get.invoke(c, "ril.serialnumber");
 } catch (Exception ignored) {
 }

这篇关于如何解码android.os.Build.SERIAL?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆