2011-08-31 89 views
2

我通過命令行中的命令「adb deivces」獲取設備名稱。 現在我想在我的android設備中獲取名稱。如何讓我的android設備名稱在我的android程序?

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"); 
     System.out.println(serial); 
     } 
    catch (Exception ignored) { 

    } 

在我的Android精品那些作品phone.But我的宏基A500平板電腦得到真正的序列號。 這與我從adb命令中獲得的名稱不符。

我surpose的DDMS通過其他方法獲取設備名稱。 但我不知道。

+0

http://stackoverflow.com/questions/2785485/is-there-a-unique-android-device-id –

+0

您從亞行獲得的名稱是自動生成的,並且不會從實際設備取得,基於此: http://developer.android.com/guide/developing/tools/adb.html#devicestatus –

回答

6

android.os.Build包含設備信息。你在Build.MODEL

+0

我從android.os.build首先搜索了這個名字,但我找不到任何userful.also我用下面的這個方法,它工作但在宏基500平板電腦上,它真正收集了真正的序列號,它也在行軍機上打印,而不是我從adb獲得的名稱。 – wiseideal

0

可能感興趣的你有沒有嘗試

android.os.Build.MANUFACTURER 
7

getting-android-device-name 我不希望這個鏈接可以幫助你。

TextView tv1 = (TextView) findViewById(R.id.tv1);

String str = android.os.Build.MODEL;

tv1.setText(str);

+0

請提供完整的答案。 –

+0

@ kilaka,現在我編輯了我的答案。 –

0

只是爲了進一步闡述: Build.MODEL是一個字符串,它是android.os.Build.MODEL的縮短版。

所以 字符串文本=( 「構建模型」 + Build.MODEL); 結果爲文字,例如 「SCH-I545」用於較新的手機或 「Galaxy Nexus」用於較舊的手機。取決於製造商和操作系統版本。

相關問題