¿Cómo instalar la aplicación desde la línea de comandos (terminal)?

10

¿Cómo instalar la aplicación desde la línea de comandos (terminal)?

Me gustaría iniciar una ventana de terminal y hacer la instalación de apk desde la línea de comandos (script de shell)

EDITAR1: dentro del teléfono. ¿También es posible instalar desde Google Play desde URL, en lugar de solo una ruta local?

No obtuve respuesta, cómo instalar la aplicación Google Play desde la línea de comandos.

klor
fuente

Respuestas:

11

Con suficientes privilegios (ADB, root, aplicación del sistema) puede usar comandos de terminal simples para instalar aplicaciones:

En una PC:

Ejecute el comando simple

adb install <path to .apk file>

y se instalará la aplicación.
Esto requiere adbestar instalado y habilitado el modo de depuración.
El archivo tiene que estar ubicado en la PC.

En adb shello un terminal en el dispositivo:

pm install <path to .apk file>

Esto es básicamente lo mismo que el método de PC, pero requiere que el archivo se coloque en el teléfono.
Además, se requieren privilegios para instalar aplicaciones (el shell ADB las hereda del sistema, otras aplicaciones de terminal requieren root )

Árbol Gigante
fuente
2
A veces, la instalación desde el dispositivo pm install <package.apk>falla con Failure [INSTALL_FAILED_INVALID_URI]. Si está en CM12.1 o tiene permisos de root y el adbcliente en el teléfono, es posible evitar esto haciendo que el teléfono se conecte a sí mismo. Para hacerlo, debe ejecutar setprop service.adb.tcp.port 5555, luego adb start-server, luego adb connect 127.0.0.1:5555, finalmente adb shell "pm install <apk_path>". Todos los comandos deben ejecutarse como root.
Grimorio
2
Por último, si usa mi método mencionado anteriormente, hay momentos en que adb informará un ficticio emulator-5554debajo adb devices. Eliminarlo adb emu killno funciona, pero emitir setprop service.adb.tcp.port 5555una vez más hará que el emulador ficticio desaparezca. El comando setprop debe ejecutarse cuando el servidor adb se está ejecutando, de lo contrario, el emulador ficticio no desaparecerá.
Grimorio
Hola @DeathMaskSalesman, estoy en CM13 y recibo el error INVALID_URI. Como puedo instalar el apk con adb y mi computadora portátil, realmente me interesaría hacer que su solución funcione, por lo que puedo hacerlo sin la necesidad de una PC. Solo una pregunta ... ¿cómo instalas adb en el teléfono? find / -name 'adb' solo me dio tres carpetas ... Buscando en línea no pude encontrar nada
Giacomo Tecya Pigani
@GiacomoTecyaPigani Podría probar suerte con una versión de ADB que extraje de mi sistema CM12.1. Después de descargarlo desde aquí , volver a montar / sistema en modo de lectura y escritura, copiar el binario a / system / bin , tema chown root.shell /system/bin/adb, chmod 755 /system/bin/adby chcon u:object_r:system_file:s0 /system/bin/adbver si funciona.
Grimorio
1
Gracias @DeathMaskSalesman, pero lamentablemente no funcionó. Lo resolví a una versión anterior de CM13 (ya que la que estaba usando ya era la última para mi dispositivo)
Giacomo Tecya Pigani