4 votos

¿Puedo abrir Chrome en Android desde la línea de comandos?

¿Existe una alternativa de línea de comandos para la depuración remota de Chrome?

Manualmente, puedo abrir pestañas de chrome://inspect/#devices . Así como puedo abrir Chrome en el escritorio desde el CLI - por ejemplo. chrome.exe --incognito --remote-debugging-port=9222 .

Pero, ¿existe la opción de abrir pestañas en Chrome en Android, que está conectado a la PC de la CLI? Necesito esa opción para semiautomatizar las pruebas. Gracias.

4voto

Firelord Puntos 161

Nota : Necesitarás acceso Root para ejecutar cualquier comando mencionado a continuación para Android 4.2.1.


Al contrario de lo que ocurre con los sistemas operativos de escritorio tradicionales, las aplicaciones en Android se invocan utilizando su componente, un Actividad . Mientras que los desarrolladores pueden llamar a las actividades utilizando la programación, los usuarios finales se quedan con la línea de comandos para hacer la llamada.

Android tiene un gestor de actividades am para gestionar las actividades, y entre otras cosas que puede hacer, lo más básico que hace es llamar a una actividad de una app.

Antes de continuar, configuremos ADB en el PC si no lo has hecho ya que vamos a contar con él. También asegúrate de que el dispositivo está siendo detectado en el PC y por ADB.

La actividad de la aplicación Chrome para Android responsable de la gestión de las pestañas es com.google.android.apps.chrome.ChromeTabbedActivity . Puede encontrar esta actividad en la lista de dicha aplicación AndroidManifest.xml (dentro del APK). En cuanto a cómo llegué a conocerlo, simplemente inicié Chrome, abrí una pestaña y miré la actividad más reciente usando el comando:

adb shell dumpsys activity recents

Sustituir recents con activities para Android 4.2.1.

La verdadera pregunta es:

¿Existe una opción para abrir las pestañas de Chrome en Android?

(Obsoleto) Para ello, introduzca el siguiente comando:

adb shell am start -n com.android.chrome/com.google.android.apps.chrome.ChromeTabbedActivity -d "<URL>" --activity-clear-task

(Probado el 21 de septiembre de 2015) Parece que Chrome ha cambiado el nombre de la actividad responsable de las pestañas. El nuevo comando es:

adb shell am start -n com.android.chrome/org.chromium.chrome.browser.ChromeTabbedActivity -d "about:newtab" --activity-clear-task

Ver paso 3. en esta respuesta para conocer los detalles del comando, si estás interesado.

Sustituir <URL> con la dirección que desee, por ejemplo 127.0.0.1 , google.com .

0 votos

Gracias. btw, ¿hay una documentación sobre las opciones para las actividades de Chrome para Android? Quiero explorar las posibilidades.

0 votos

@Aviv: No lo sé. Sólo quería decírtelo: Si estás contento con esta respuesta, no olvides hacer clic en la marca de verificación gris que hay al lado. Esto le dará a Firelord algunos puntos de reputación extra.

0 votos

@Firelord ¿Hay alguna forma de empezar en modo incógnito? Lo he intentado: am start -n com.android.chrome/com.google.android.apps.chrome.document.I‌​ncognitoDocumentActi‌​vity -d http://google.com pero no funcionó

1voto

Roopa Puntos 1

También puede utilizar

am start --user 0 -n com.android.chrome/com.google.android.apps.chrome.Main

0voto

codeskyblue Puntos 101

Recientemente he utilizado el comando follow

adb shell am start -n com.android.chrome/org.chromium.chrome.browser.ChromeTabbedActivity -d "https://www.google.com"

El nombre de la actividad se puede encontrar en adb shell dumpsys activity recents | grep -i chrome

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X