2011-06-16 5 views
15

Si llamo al comando "dispositivos adb.exe" obtengo una lista de dispositivos con una identificación única para cada uno. Estas identificaciones son perfectas para la programación, pero no son muy legibles. ¿Hay alguna forma de que pueda vincular uno de estos ID con una descripción (no necesariamente única) del teléfono? Por ejemplo, si tengo un dispositivo con una ID 1234567890abcdef, ¿hay alguna manera de darme cuenta de que en la vida real es un Motorola Droid X?¿Puedo usar adb.exe para encontrar una descripción de un teléfono?

Respuesta

34

En Android hay una entrada Model number en la configuración que muestra el nombre del teléfono.

Hay una manera de ver rápidamente esta vía línea de comando:

adb shell cat /system/build.prop | grep "product" 

Esto es lo que se muestra para Samsung Galaxy S 4G:

ro.product.model=SGH-T959V 
ro.product.brand=TMOUS 
ro.product.name=SGH-T959V 
ro.product.device=SGH-T959V 
ro.product.board=SGH-T959V 
ro.product.cpu.abi=armeabi-v7a 
ro.product.cpu.abi2=armeabi 
ro.product.manufacturer=Samsung 
ro.product.locale.language=en 
ro.product.locale.region=US 
# ro.build.product is obsolete; use ro.product.device 
ro.build.product=SGH-T959V 

En un HTC Desire, el resultado se ve li ke esto:

ro.product.model=HTC Desire 
ro.product.brand=htc_wwe 
ro.product.name=htc_bravo 
ro.product.device=bravo 
ro.product.board=bravo 
ro.product.cpu.abi=armeabi-v7a 
ro.product.cpu.abi2=armeabi 
ro.product.manufacturer=HTC 
ro.product.locale.language=hdpi 
ro.product.locale.region= 

Puede refinar su búsqueda para mostrar sólo una línea:

adb shell cat /system/build.prop | grep "ro.product.device" 

o

adb shell cat /system/build.prop | grep "ro.product.model" 
+1

En los dispositivos de HTC, probablemente querrá buscar el modelo es decir ro.product.model = HTC Desire como dispositivo se utiliza por sus nombres en clave (ro.product.device = bravo). –

+0

Acabo de editar la respuesta para mencionar el 'modelo' y luego vi tu comentario :) – inazaruk

+0

@David Caunt, ¿Podrías editar mi respuesta y agregar los resultados de tu salida de HTC? Entonces, otros pueden ver la diferencia entre 'modelo' y' dispositivo'. – inazaruk

0

Desafortunadamente, no hay manera confiable de hacer esto ya que cada fabricante retoques sus propiedades de construcción

Si escribe "ayuda adb" en la línea de comandos se puede ver una lista de los comandos adb y una descripción para cada .

4

Con los nuevos dispositivos, se puede ejecutar

adb devices -l

Esto mostrará una lista de algunos dispositivos en un formato legible por humanos más

Ejemplo:

04d9a601ce516d53 device usb:1A134500 product:occam model:Nexus_4 device:mako 
015d4b3406280a07 device usb:1A134700 product:nakasi model:Nexus_7 device:grouper 
01466E620900F005 device usb:1A134600 product:mysid model:Galaxy_Nexus device:toro 
+1

¿Cómo se definen las "versiones más recientes de Android"? –

+0

Supongo que en este punto, va a ser la mayoría de las versiones de Android. Creo que el límite es Android 4.2 y más. – Sperr

2

Sí, adb shell cat /system/build.prop es maravilloso, pero también como dijo @ Matt, que a veces difiere debido a la distinta marca.

en mi humilde opinión, el método más fiable es el comando integrado: adb shell getprop

============================ ========================

Aquí hay una comparación una excepción (Genymotion emulador):

por adb shell cat /system/build.prop se obtendrá

ro.product.brand=generic 
ro.product.name=vbox86p 
ro.product.device=vbox86p 
ro.product.board= 
ro.product.cpu.abi=x86 
ro.product.manufacturer=Genymotion 
ro.product.locale.language=en 
ro.product.locale.region=US 

Así que no hay ningún valor modelo :(

Por adb shell getprop obtendrá

[ro.product.manufacturer]: [Genymotion] 
[ro.product.model]: [Nexus422ForAutomation] 
[ro.product.name]: [vbox86p] 

Aquí aparecerá el nombre del modelo: Nexus422ForAutomation :)

0

estoy usando este script (en MacOS):

#!/bin/bash 

devices=`adb devices | grep "device" | grep -v "List of" | cut -d " " -f 1` 

for device in $devices 
do 
    manufacturer=`adb -s $device shell getprop ro.product.manufacturer | sed -e 's/[[:space:]]*\$//'` 
    model=`adb -s $device shell getprop ro.product.model | sed -e 's/[[:space:]]*\$//'` 
    echo "$device: $manufacturer $model" 
done 

Se produce por ejemplo el siguiente resultado:

T076000UWX: motorola XT1053 
C4F12070E5A068E: samsung GT-P7510 
4df1ff977b919f91: samsung GT-N7100 
4258393032523638324D: Sony Ericsson LT18i 
Cuestiones relacionadas