Escolar Documentos
Profissional Documentos
Cultura Documentos
Android Developers
En este documento:
Android Debug Bridge (ADB) es una herramienta de lneas de comandos verstil que te permite
comunicarte con una instancia de un emulador o un dispositivo Android conectado. Esta
herramienta proporciona diferentes acciones en dispositivos, como la instalacin y la
depuracin de apps, y proporciona acceso a un shell Unix que puedes usar para ejecutar varios
comandos en un emulador o un dispositivo conectado. Es un programa cliente-servidor que
incluye tres componentes:
Un cliente, que enva comandos. El cliente se ejecuta en tu mquina de desarrollo. Puedes invocar un
cliente desde un terminal de lnea de comandos emitiendo un comando de ADB.
This site uses cookies to store your preferences for site-specific language and display options.
Un daemon, que ejecuta comandos en un dispositivo. El daemon se ejecuta como un proceso en segundo
planoOKen cada instancia del emulador o dispositivo.
https://developer.android.com/studio/command-line/adb.html?hl=es-419 1/22
13/10/2017 Android Debug Bridge | Android Studio
Un servidor, que administra la comunicacin entre el cliente y el daemon. El servidor se ejecuta como un
proceso en segundo plano en tu mquina de desarrollo.
Luego, el servidor establece conexiones con todas las instancias de emuladores o dispositivos en ejecucin.
Localiza las instancias de emuladores o dispositivos escaneando puertos con nmeros impares en el rango
de 5555 a 5585, que usan los emuladores y dispositivos. Cuando el servidor encuentra un daemon de ADB,
establece una conexin con ese puerto. Ten en cuenta que cada instancia del emulador o dispositivo
adquiere un par de puertos secuenciales; un puerto con nmero par para las conexiones de la consola y uno
con nmero impar para las conexiones de ADB. Por ejemplo:
Como se muestra, la instancia del emulador conectada al ADB en el puerto 5555 es la misma que la instancia
cuya consola se encarga de la recepcin en el puerto 5554.
Una vez que el servidor establece conexiones con todas las instancias del emulador, puedes usar comandos
de ADB para acceder a esas instancias. Dado que el servidor administra las conexiones con las instancias del
emulador o dispositivo y maneja comandos de diferentes clientes de ADB, puedes controlar cualquier
instancia del emulador o dispositivo desde cualquier cliente (o desde una secuencia de comandos).
En Android 4.2 y versiones posteriores, la pantalla Developer options se encuentra oculta de forma
predeterminada. Para poder visualizarla, dirgete a Settings > About phone y presiona Build number siete
veces. Cuando regreses a la pantalla anterior, vers Developer options en la parte inferior.
https://developer.android.com/studio/command-line/adb.html?hl=es-419 2/22
13/10/2017 Android Debug Bridge | Android Studio
En algunos dispositivos, la pantalla Developer options puede encontrarse en otro lugar o tener un nombre
diferente.
Ahora puedes conectar tu dispositivo con USB. Puedes verificar que tu dispositivo est conectado ejecutando
adbdevicesdesde el directorio android_sdk/platformtools/. Si ests conectado, vers el nombre del
dispositivo en la lista como device (dispositivo).
Nota: Cuando conectas un dispositivo con Android4.2.2 o una versin posterior, en el sistema se
muestra un dilogo en el que se solicita aceptar una clave RSA para realizar la depuracin a travs de
esta computadora. Este mecanismo de seguridad protege los dispositivos del usuario porque garantiza
que la depuracin a travs de USB y otros comandos de ADB no puedan ejecutarse a menos que puedas
desbloquear el dispositivo y aceptar el contenido del dilogo.
Para obtener ms informacin acerca de cmo establecer una conexin con un dispositivo mediante
conexiones USB, lee Ejecutar apps en un dispositivo de hardware
(https://developer.android.com/studio/run/device.html?hl=es-419).
1. Conecta tu dispositivo Android y la computadora host ADB a una red Wi-Fi comn a la que ambos puedan
acceder. Ten en cuenta que no todos los puntos de acceso son adecuados; quiz necesites usar un punto
de acceso cuyo firewall est configurado correctamente para admitir ADB.
Nota: Si intentas conectarte a un dispositivo Android Wear, haz que se conecte a la red Wi-Fi por la
fuerza desactivando el Bluetooth del telfono conectado a l.
3. Configura el dispositivo de destino para que busque una conexin TCP/IP en el puerto 5555.
$adbtcpip5555
5. Busca la direccin IP del dispositivo Android. Por ejemplo, en un dispositivo Nexus, puedes buscar la
direccin IP en Settings > About tablet (o About phone) > Status > IP address. O bien, en un dispositivo
Android Wear, puedes buscar la direccin IP en Settings > Wi-Fi Settings > Advanced > IP address.
$adbconnectdevice_ip_address
https://developer.android.com/studio/command-line/adb.html?hl=es-419 3/22
13/10/2017 Android Debug Bridge | Android Studio
$adbdevices
Listofdevicesattached
device_ip_address:5555device
1. Asegrate de que tu host an est conectado a la misma red Wi-Fi a la que est conectado el dispositivo
Android.
adbkillserver
adbdevices
Nmero de serie: una string creada por ADB para identificar de forma exclusiva una instancia del
emulador o dispositivo por su nmero de puerto en la consola. El formato del nmero de serie es type
consoleport. Aqu te mostramos un ejemplo de nmero de serie: emulator5554
device: la instancia ahora est conectada al servidor de ADB. Ten en cuenta que este estado no
implica que el sistema Android se haya iniciado y est funcionando, ya que la instancia se conecta a
ADB mientras el sistema an se inicia. No obstante, despus del inicio, este es el estado operativo
normal de una instancia de emulador o dispositivo.
https://developer.android.com/studio/command-line/adb.html?hl=es-419 4/22
13/10/2017 Android Debug Bridge | Android Studio
Listofdevicesattached
serial_numberstate
adbdevices
Listofdevicesattached
emulator5554device
emulator5556device
emulator5558device
adbsserial_numbercommand
Como se muestra, para especificar la instancia de destino para un comando debes usar su nmero de serie
asignado por ADB. Puedes usar el comando devicespara obtener los nmeros de serie de la ejecucin de
instancias del emulador o dispositivo. Por ejemplo:
adbsemulator5556installhelloWorld.apk
Ten en cuenta que si emites un comando sin especificar una instancia de destino en el emulador o dispositivo
cuando haya varios dispositivos disponibles, ADB generar un error.
Si hay varios dispositivos disponibles (de hardware o emulados), pero solo uno es un emulador, simplemente
usa la opcin epara enviar comandos al emulador. Asimismo, si hay varios dispositivos pero solo un
dispositivo de hardware asociado, usa la opcin dpara enviar comandos al dispositivo de hardware.
https://developer.android.com/studio/command-line/adb.html?hl=es-419 5/22
13/10/2017 Android Debug Bridge | Android Studio
del emulador o dispositivo. Para hacerlo, usa el comando install. Con el comando, debes especificar la ruta
de acceso al archivo APK que desees instalar:
adbinstallpath_to_apk
Para obtener ms informacin sobre cmo crear un archivo APK que puedas instalar en una instancia del
emulador o dispositivo, consulta Compilar y ejecutar tu app (https://developer.android.com/studio/run/index.html?hl=es-
419).
Ten en cuenta que si usas Android Studio no necesitas emplear ADB (ni aapt) directamente para instalar tu
aplicacin en el emulador o dispositivo. En su lugar, Android Studio se encarga del empaquetado y de la
instalacin de la aplicacin.
adbforwardtcp:6100tcp:7100
Tambin puedes usar ADB para configurar la redireccin a determinados sockets de dominio UNIX
abstractos, como se ilustra aqu:
adbforwardtcp:6100local:logd
Para copiar un archivo o directorio (y sus subdirectorios) desde el emulador o dispositivo, usa
adbpullremotelocal
https://developer.android.com/studio/command-line/adb.html?hl=es-419 6/22
13/10/2017 Android Debug Bridge | Android Studio
adbpushlocalremote
En los comandos, localy remotehacen referencia a las rutas de acceso de los archivos o el directorio de
destino en tu mquina de desarrollo (local) y en la instancia del emulador o dispositivo (remoto). Por ejemplo:
adbpushfoo.txt/sdcard/foo.txt
Para detener el servidor de ADB, usa el comando adbkillserver. Luego podrs reiniciar el servidor
emitiendo cualquier otro comando de ADB.
adb[d|e|sserial_number]command
Si hay un solo emulador en ejecucin o un solo dispositivo conectado, de forma predeterminada, el comando
de ADB se enva a ese dispositivo. Si hay varios emuladores ejecutndose o diferentes dispositivos
conectados, debes usar la opcin d, eo spara especificar el dispositivo de destino al que debe dirigirse el
comando.
En la tabla siguiente se incluyen todos los comandos de ADB admitidos y se explican su significado y uso.
General devices Imprime una lista de todas las Para obtener ms informaci
instancias del emulador o instancias del emulador o disp
dispositivo conectado. (#devicestatus).
dispositivo.
jdwp:pid
[parm]...: cero o ms
opciones PPP o PPPD, como
defaultroute, localy
notty, entre otras.
adbwaitfordevices
https://developer.android.com/studio/command-line/adb.html?hl=es-419 9/22
13/10/2017 Android Debug Bridge | Android Studio
adbwaitfordevicei
adb[d|e|sserial_number]shellshell_command
adb[d|e|sserial_number]shell
Cuando ests listo para salir del shell remoto, presiona Control + D o escribe exit.
https://developer.android.com/studio/command-line/adb.html?hl=es-419 10/22
13/10/2017 Android Debug Bridge | Android Studio
Los ejecutables del comando shell se guardan en el sistema de archivos del emulador o dispositivo, en
/system/bin/.
amcommand
Tambin puedes emitir un comando del administrador de actividades directamente desde ADB sin ingresar a
un shell remoto. Por ejemplo:
adbshellamstartaandroid.intent.action.VIEW
Comando Descripcin
D: habilita la depuracin.
https://developer.android.com/studio/command-line/adb.html?hl=es-419 11/22
13/10/2017 Android Debug Bridge | Android Studio
https://developer.android.com/studio/command-line/adb.html?hl=es-419 12/22
13/10/2017 Android Debug Bridge | Android Studio
value[,value...].
cleardebugapp Borra el conjunto anterior del paquete para depurar con setdebug
app.
de package.
https://developer.android.com/studio/command-line/adb.html?hl=es-419 13/22
13/10/2017 Android Debug Bridge | Android Studio
pmcommand
Tambin puedes emitir un comando del administrador de paquetes directamente desde ADB sin ingresar a un
shell remoto. Por ejemplo:
adbshellpmuninstallcom.example.MyApp
Comando Descripcin
https://developer.android.com/studio/command-line/adb.html?hl=es-419 14/22
13/10/2017 Android Debug Bridge | Android Studio
s: Resumen breve.
https://developer.android.com/studio/command-line/adb.html?hl=es-419 15/22
13/10/2017 Android Debug Bridge | Android Studio
iinstaller_package_name:
Especifica el nombre de paquete del
instalador.
s: Instala el paquete en el
almacenamiento masivo compartido
(como una tarjeta sd).
https://developer.android.com/studio/command-line/adb.html?hl=es-419 16/22
13/10/2017 Android Debug Bridge | Android Studio
disableuser[options]package_or_component Opciones:
useruser_id: El usuario a
inhabilitar.
https://developer.android.com/studio/command-line/adb.html?hl=es-419 17/22
13/10/2017 Android Debug Bridge | Android Studio
la mejor ubicacin.
screencapfilename
$adbshellscreencap/sdcard/screen.png
Aqu te mostramos un ejemplo de una sesin de captura de pantalla, usando el shell de ADB para realizar la
captura de pantalla y el comando pullpara descargar el archivo desde el dispositivo:
$adbshell
shell@$screencap/sdcard/screen.png
shell@$exit
$adbpull/sdcard/screen.png
https://developer.android.com/studio/command-line/adb.html?hl=es-419 18/22
13/10/2017 Android Debug Bridge | Android Studio
Grabar un video
El comando screenrecordes una utilidad del shell que permite grabar la pantalla de dispositivos con
Android 4.4 (nivel de API 19) y versiones posteriores. La utilidad graba la actividad en pantalla en un archivo
MPEG-4.
Un programador puede usar este archivo para crear videos promocionales o de capacitacin. En un shell, la
sintaxis es la siguiente:
screenrecord[options]filename
$adbshellscreenrecord/sdcard/demo.mp4
Para comenzar a grabar la pantalla de tu dispositivo, ejecuta el comando screenrecordpara grabar video.
Luego, ejecuta el comando pullpara descargar el video del dispositivo en una computadora host. Aqu te
mostramos un ejemplo de una sesin de grabacin:
$adbshell
shell@$screenrecordverbose/sdcard/demo.mp4
(pressControl+Ctostop)
shell@$exit
$adbpull/sdcard/demo.mp4
La utilidad screenrecordpuede grabar en cualquier resolucin admitida y tasa de bits que solicites,
mientras conserva la relacin de aspecto de la pantalla del dispositivo. De forma predeterminada, la utilidad
graba en la resolucin y la orientacin nativas de la pantalla, con un tiempo de grabacin mximo de tres
minutos.
Hay algunas limitaciones conocidas de la utilidad screenrecordque debes conocer al momento de usarla.
Es posible que algunos dispositivos no puedan grabar en su resolucin de pantalla nativa. Si tienes
problemas con la grabacin de la pantalla, intenta usar una resolucin de pantalla ms baja.
No se admite la rotacin de la pantalla durante la grabacin. Si la pantalla gira durante la grabacin, parte
https://developer.android.com/studio/command-line/adb.html?hl=es-419 19/22
13/10/2017 Android Debug Bridge | Android Studio
Opciones Descripcin
bitraterate Fija la tasa de bits de video para el video en megabits por segundo. El valor
predeterminado es 4 Mbps. Puedes aumentar la tasa de bits para mejorar la
calidad del video, pero si lo haces los archivos de video sern ms grandes.
En el siguiente ejemplo, se fija la tasa de bits de grabacin en 6 Mbps:
screenrecordbitrate6000000/sdcard/demo.mp4
Para producir un texto a partir de informacin del perfil, usa el siguiente comando:
$adbshellcmdpackagedumpprofilespackage
$adbpull/data/misc/profman/package.txt
Para obtener una lista de los programas del shell disponibles, usa el siguiente comando:
adbshellls/system/bin
estado en un de usar.
archivo.
logcat[option]...[filter Habilita el
spec]... registro del
sistema y de
apps, e
imprime los
resultados en
la pantalla.
start Inicia
(reinicia) una
instancia del
emulador o
dispositivo.
stop Detiene la
ejecucin de
una instancia
del emulador
o dispositivo.
https://developer.android.com/studio/command-line/adb.html?hl=es-419 21/22
13/10/2017 Android Debug Bridge | Android Studio
https://developer.android.com/studio/command-line/adb.html?hl=es-419 22/22