如何读取三星设备上的序列号(从应用程序/设备上)?

时间:2010-09-17 01:42:36

标签: android

如何阅读三星Android手机的设备序列号(不是IMEI)(当您调用'adb devices'时获得的值相同)但是从内部应用程序或设备;不使用PC / USB / adb。

我找到了HTC和其他设备的解决方案,即 - 调用

getprop ro.serialno

在终端

如此处所述,

http://groups.google.com/group/android-developers/browse_thread/thread/3d57b1a214cdf928

但它不适用于三星Galaxy S.

3 个答案:

答案 0 :(得分:3)

修改:您可能还想查看关于此主题的other answer

在首次发布问题时,不确定是否可以这样做。然而,3年后,这是可能的:

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;
}

答案 1 :(得分:0)

我的结论是三星不可能。

答案 2 :(得分:0)

您可以在adb shell上使用getprop命令,并检查哪个文件包含正确的序列号。很多时候序列号位于不同的文件上,代码必须是特定于设备的。

Foe samung Tab 3您可以使用以下代码:

尝试{

        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";

    }