Cómo depurar aplicaciones Android en dispositivos externos


Android debug

Mientras desarrollamos una aplicación Android, puede resultar muy interesante testear la aplicación en un dispositivo real. En este artículo voy a intentar explicar cómo configurar tanto el entorno de desarrollo como los dispositivos, para depurar y realizar pruebas en un dispositivo externo.

Es posible utilizar cualquier dispositivo Android como entorno para ejecutar, depurar y testear tus aplicaciones. Las herramientas que incluye la SDK, permiten que cada vez que se compila la aplicación resulte cómodo y fácil ejecutar la aplicación en un dispositivo externo.
Existen dos alternativas para instalar directamente la aplicación en el dispositivo, utilizando Eclipse o bien desde la línea de comandos utilizando ADB (Android Debugging Bridge).

Es importante mencionar, que en determinadas situaciones puede resultar recomendable, continuar utilizando el emulador de Android para depurar tus aplicaciones, por ejemplo para realizar pruebas en configuraciones no equivalentes al dispositivo real en que se están haciendo las pruebas. Distintas versiones de Android, diferentes resoluciones de pantalla, etc.

Configuración de los dispositivos

Vamos a seguir una serie de pasos para conseguir testear y depurar las aplicaciones Android en un dispositivo externo del mismo modo que esto se consigue hacer en el emulador.

El primer paso consistirá en declarar nuestra aplicación como "debuggable" en el archivo Manifest. Si estás utilizando Eclipse salta este paso, puesto que Eclipse habilita el modo depuración automáticamente. En el archivo AndroidManifest.xml añade android:debuggable="true" al elemento <application>.

Nota: Si activas manualmente el modo depuración en el archivo Manifest, asegúrate de desactivarlo una vez terminada para publicarse la aplicación.

A continuación activa el modo depuración en tu dispositivo.

  • En la mayoría de dispositivos que ejecutan Android 3.2 o versiones anteriores, puedes activarlo desde Ajustes>Aplicaciones>Desarrollo. Una vez allí, marca la primera opción Depuración USB.

  • En versiones 4.0 de Android o superiores, puedes activarlo desde Ajustes>Opciones del desarrollador.

  • A partir de Android 4.3, las Opciones del desarrollador están ocultas por defecto. Puedes activarla desde Ajustes>Información del dispositivo y una vez allí pulsa SIETE veces sobre el número de compilación. Una vez hecho esto vuelve a la pantalla previa y podrás activar las Opciones del desarrollador.

El último paso consiste en configurar el sistema para detectar tu dispositivo.

Si estás utilizando Windows, necesitarás instalar los controladores proporcionados por el fabricante del dispositivo que deseas utilizar (OEM), que podrás encontrar a través de los enlaces de la siguiente tabla.

Nota: Si tu dispositivo es un Nexus One, o un Nexus S, entonces necesitarás Google USB Driver. El Galaxy Nexus es distribuido por Samsung (modelo SCH-I515).

OEMDriver URL
Acerhttp://www.acer.com/worldwide/support/mobile.html
ALCATEL ONE TOUCHhttp://www.alcatelonetouch.com/global-en/support/faq/usbdriver.html
Asushttp://support.asus.com/download/
Dellhttp://support.dell.com/support/downloads/index.aspx?c=us&cs=19&l=en&s=dhs&~ck=anavml
Foxconnhttp://drivers.cmcs.com.tw/
Fujitsuhttp://www.fmworld.net/product/phone/sp/android/develop/
Garmin-Asushttps://www.garminasus.com/en_US/support/pcsync/
Hisensehttp://app.hismarttv.com/dss/resourcecontent.do?method=viewResourceDetail&resourceId=16&type=5
HTChttp://www.htc.com
Huaweihttp://www.huaweidevice.com/worldwide/downloadCenter.do?method=index
Intelhttp://www.intel.com/software/android
KT Techhttp://www.kttech.co.kr/cscenter/download05.asp
Kyocerahttp://www.kyocera-wireless.com/support/phone_drivers.htm
Lenovohttp://developer.lenovomm.com/developer/download.jsp
LGEhttp://www.lg.com/us/mobile-phones/mobile-support/mobile-lg-mobile-phone-support.jsp
Motorolahttp://developer.motorola.com/docstools/USB_Drivers/
MTKhttp://online.mediatek.com/Public%20Documents/MTK_Android_USB_Driver.zip
Oppohttp://www.oppo.com/index.php?q=software/view&sw_id=631
Pantechhttp://www.isky.co.kr/cs/software/software.sky?fromUrl=index
Pegatronhttp://www.pegatroncorp.com/download/New_Duke_PC_Driver_0705.zip
Samsunghttp://www.samsung.com/us/support/downloads
Sharphttp://k-tai.sharp.co.jp/support/
SK Telesyshttp://developer.sonymobile.com/downloads/drivers/
Sony Mobile Communicationshttp://www.sk-w.com/service/wDownload/wDownload.jsp
Teleepochhttp://www.teleepoch.com/android.html
Toshibahttp://support.toshiba.com/sscontent?docId=4001814
Yulong Coolpadhttp://www.yulong.com/product/product/product/downloadList.html#downListUL
Xiaomihttp://www.xiaomi.com/c/driver/index.html
ZTEhttp://support.zte.com.cn/support/news/NewsDetail.aspx?newsId=1000442

Si estás utilizando MAC OS X, no necesitarás instalar controladores.

Si estás utilizando Linux Ubuntu, necesitarás añadir un archivo de reglas udev que contenga la configuración USB para cada tipo de dispositivo que desees usar. En este archivo de reglas cada proveedor debe ser identificado por un único identificador (vendor ID), especificado por la propiedad ATTR {idVendor}. Puedes encontrar una lista detallada de los identificadores al final de este artículo.

Para configurar la detección de dispositivos en Linux Ubuntu:

  • Identificate como root o superusuario y crea el archivo /etc/udev/rules.d/51-android.rules.

  • Usa el siguiente formato para añadir proveedores al archivo:

    SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666", GROUP="plugdev"

    En este ejemplo, el propietario es Sony Ericsson, el atributo MODE especifica los permisos de lectura/escritura, y GROUP define el grupo propietario.

  • Para terminar ejecuta el siguiente comando: Chmod a+r /etc/udev/rules.d/51-android.rules

Cuando conectes el dispositivo a través de USB, podrás verificar que tu dispositivo está conectado ejecutando el comando adb devices desde el directorio donde se encuentra instalado el SDK, platform-tools/ . Si está conectado debería aparecer el nombre del dispositivo.

Nota: Al conectar el dispositivo al ordenador es posible que se dispare un mecanismo de seguridad, dando lugar a un cuadro de dialogo preguntando si aceptas una clave RSA que permita la depuración a través del ordenador. Simplemente acepta.

Si estás utilizando Eclipse, tan sólo deberás ejecutar tu aplicación como siempre y se mostrará un cuadro de dialogo que te permitirá elegir entre depuración en el emulador y depuración en el dispositivo. Selecciona el dispositivo y ejecuta la aplicación.

CompanyUSB Vendor ID
Acer0502
Asus0b05
Dell413c
Foxconn0489
Fujitsu04c5
Fujitsu Toshiba04c5
Garmin-Asus091e
Google18d1
Haier201E
Hisense109b
HTC0bb4
Huawei12d1
K-Touch24e3
KT Tech2116
Kyocera0482
Lenovo17ef
LG1004
Motorola22b8
MTK0e8d
NEC0409
Nook2080
Nvidia0955
OTGV2257
Pantech10a9
Pegatron1d4d
Philips0471
PMC-Sierra04da
Qualcomm05c6
SK Telesys1f53
Samsung04e8
Sharp04dd
Sony054c
Sony Ericsson0fce
Teleepoch2340
Toshiba0930
ZTE19d2

Fuente: http://developer.android.com/tools/device.html#setting-up





comments powered by Disqus
www.000webhost.com