三星设备运行Android系统的序列号

19

我有一台三星Galaxy Tab 2.0(7英寸)的设备。

在这个设备的背面上,有一个格式为RF3C6000MNA的序列号。

当我进入设备的设置页面时,选择"关于设备"->"状态"->"序列号",也会显示这个数字。

然而,我无法以编程方式提取此数字。

我已经看到很多关于提取序列号的文章,但是它返回了完全不同的数字。(使用android.os.Build.SERIAL)

我已经提取了IMEI和MAC地址,因此不需要相关代码。


你尝试过查找Android设备序列号的方法吗?how-to-find-serial-number-of-android-device - ρяσѕρєя K
是的,但是这些解决方案都没有返回与设备背面印刷的序列号相同的序列号,并且在设置中的“状态”屏幕上显示。 - Rich S
我有完全相同的问题,但我想从adb命令行获取序列号。 有人有解决方案吗? - Benjamin Lucidarme
可能是重复的问题:如何在三星设备上(从应用程序内部/设备上)读取序列号?(https://stackoverflow.com/questions/3732147/how-to-read-serial-number-on-a-samsung-device-from-within-app-on-the-device) - childno͡.de
3个回答

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

编辑: 距离此回答已经有一段时间了,这里有几个更新点:

  • OP问的是Galaxy Tab 2,对于它确实是ril.serialnumber(即使对于非3G模型也是如此-请参见此处)。根据Himanshu的回答,Galaxy Tab 3使用sys.serialnumber(另支持此答案)。对于平板电脑来说,sys.serialnumber更加合理,因为ril.*代表无线电接口层,而大多数平板电脑都没有配备 (ril.serialnumber则更适用于手机)。
  • 获取设备序列号(即包装上的序列号-请勿与Settings.Secure.ANDROID_ID或API中分散的其他“唯一”标识符混淆)没有标准API。这意味着由制造商决定在哪里存储设备序列号(如果有的话)。在S3 Mini上,它是ril.serialnumber,在NexusOne上,它是ro.serialno此处),在Galaxy Tab 2上,它是ril.serialnumber,在Galaxy Tab 3/4上,它是sys.serialnumber,在Lenovo Tab上,它既不是以上任何一种(请参见此处)。这些设置似乎是寻找设备序列号的常规嫌疑人,但不应视为理所当然,因此不应依赖于其跟踪唯一应用程序安装。

太棒了,即使三星也不知道如何解决这个问题。非常感谢你。 - Rich S
这段代码会为所有制造商提供序列号,还是只针对三星Galaxy? - bentzy
1
ril.serialnumber 可以在 Galaxy Camera 1(EK GC100 型号)上使用,很可能也适用于 Galaxy Camera 2。 - Simurr

2
你可以在adb shell中使用getprop命令,检查哪个文件包含正确的序列号。很多时候序列号位于不同的文件中,并且代码必须是设备特定的。
对于三星Tab 3,您可以使用以下代码:
try {

        Class<?> c = Class.forName("android.os.SystemProperties");

        Method get = c.getMethod("get", String.class, String.class);

        serialnum = (String) (get.invoke(c, "sys.serialnumber", "unknown"));

    } catch (Exception ignored) {

        serialnum = "unknown";

    }

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接