2011-08-25 7 views
50

Sé cómo instalar el archivo apk en el emulador mediante el símbolo del sistema y todo eso. Pero quiero saber si es posible instalar el mismo archivo apk en múltiples emuladores dando un nombre específico. En realidad tengo que probar un archivo apk en muchos dispositivos. y para eso he comenzado muchos dispositivos. Sé cómo instalarlo. si todos los dispositivos están abiertos, no se instalará. Entonces, ¿hay alguna alternativa para instalar ese archivo apk al dar cualquier ID de emulador de dispositivo específico o cualquier nombre? Por favor, ayúdame si hay alguna idea para ello. . . Gracias.es posible instalar un archivo apk si hay más de un emuladores/dispositivos conectados

Respuesta

154

Sí, puede instalar un APK en un determinado dispositivo.

En comandos, escriba:

adb devices 
// list of devices and its unique ID... 

continuación, escriba:

adb -s "<deviceIDfromlist>" install "<path-to-apk>" 
+0

Identificación del dispositivo significa ese número ?? que aparece en el dispositivo como 5554 o 5556 ... como si fuera? –

+2

sí, el número que está recibiendo después de ejecutar los dispositivos adb –

+0

Gracias. Entiendo. ¿Pero es que "deviceIDfromlist" es ese número de dispositivo enumerado como 5554 o 5556 o así? o cualquier otro número diferente? –

7

paso 1: Obtener el dispositivo IDS todo dispositivo conectado al dispositivo

dispositivos adb

paso 2 : Instalar en el dispositivo particular y desea instalar

-s adb deviceid vía de instalación + apk

Ejemplo:

paso 1:

C: \ Android \ android-SDK \ Platform-tools> adb devices Lista de dispositivos conectados emulador -5554 dispositivo 014FD87107021017 dispositivo

paso 2:

C: \ Android \ android-SDK \ Platform-tools> adb -s 014 FD87107021017 install C: \ Users \ user \ Documents \ appname.apk

+0

gracias @Happy Vicky exacta quiero este –

+0

debemos usar alguna canalización o script que hacer todos los comandos secuencialmente – Vinayak

+0

gracias- muy útil – Simon

4

Utilice los siguientes scripts para instalar apk en varios dispositivos/emuladores.

for SERIAL in $(adb devices | grep -v List | cut -f 1); 
    do adb -s $SERIAL install -r /path/to/product.apk; 
    done 

Elimina -r si no estás reinstalando el apk. También puede reemplazar "install -r /path/to/product.apk" a otros comandos adb, como trabajar en un solo dispositivo.

Funciona para mí en dispositivos reales, pero creo que también debería funcionar para emuladores.

6

Es posible emitir el comando de instalación simultáneamente en todos los dispositivos conectados.

La clave es ejecutar adb en un proceso por separado (&).

me ocurrió con la siguiente secuencia de comandos para la instalación simultánea de fuego apagado en todos los dispositivos conectados de la mina y finalmente lanzar instalada la aplicación en cada uno de ellos:

#!/bin/sh 

function install_job { 

    adb -s ${x[0]} install -r PATH_TO_YOUR_APK 
    adb -s ${x[0]} shell am start -n "com.example.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER 

} 


#iterate over devices IP-addresses or serial numbers and start a job 

while read LINE 
do 
    eval x=($LINE) 
    install_job ${x[0]} > /dev/null 2>&1 & 
done <<< "`adb devices | cut -sf 1`" 

echo "WATING FOR INSTALLATION PROCESSES TO COMPLETE" 
wait 

echo "DONE INSTALLING" 

Nota 1: la salida estándar y STDERR están suprimidos. No verá ningún resultado de operación de "instalación de adb". Esto puede mejorarse, supongo, si realmente tiene que

Nota 2: También podría mejorar la secuencia de comandos proporcionando args en lugar de ruta de acceso codificada y nombres de actividad.

De esa manera:

  1. No tiene que realizar manualmente instalar en cada dispositivo
  2. no tiene que esperar a que una instalación para terminar el fin de ejecutar otro (ADB tareas se ponen en marcha en paralelo)
+0

aprecio su responder. Pero hotveryspicy es adecuado para lo que he pedido. También actualicé mi pregunta para que otros no tengan una pista equivocada de lo que estoy preguntando. Realmente gracias por la respuesta.+1 de mi parte a su respuesta porque también ayuda de otra manera. –

+0

Gracias por los comentarios, corrigí la respuesta – Drew

+0

No, su respuesta es correcta en caso de que alguien quiera instalar el archivo apk de una sola vez ... –

0

Puede instalar en varios dispositivos a la vez mediante la depuración de USB.

En Eclipse Ejecutar -> Ejecutar configuraciones -> elija su proyecto (a la izquierda) -> Destino -> Ejecutar en Todos los dispositivos compatibles.

El proyecto seleccionado se instalará en todos los dispositivos conectados

Cuestiones relacionadas