Detener la reproducción de medios a través de adb

Estoy probando algunas configuraciones en un teléfono y, lamentablemente, el único control que tengo es a través de adb en este momento. Mi problema es que si bien puedo iniciar la reproducción de un archivo de música con el siguiente comando, no tengo forma de detenerlo para poder realizar la siguiente iteración.

adb shell am start -a android.intent.action.View -d "file:///sdcard/Music/mediatest.mp3" -n "com.android.music/.MediaPlaybackActivity"

No sé si es posible finalizar la reproducción con otro comando adb, pero no me lo parece. Veo que no hay intentos que parezcan realizar esa función, ni ninguna actividad que se haga para detener el reproducción de medios.

Cuando ejecuta el comando, ¿el terminal se "bloquea" hasta que finaliza la canción, o se ejecuta instantáneamente y luego regresa al indicador del terminal?

Respuestas (2)

Use KeyEvent para hacer el trabajo.

adb shell input keyevent 85

85corresponde a KEYCODE_MEDIA_PLAY_PAUSE. Se pueden encontrar más códigos clave aquí o aquí .

Alternativamente, si la actividad que presenta las opciones Reproducir/Pausar está en primer plano, puede hacer lo siguiente:

adb shell input touchscreen tap <X> <Y>

donde <X>y <Y>son las coordenadas del toque que realizaría para Reproducir/Pausar con los dedos. Vea mi respuesta aquí para saber cómo obtenerlos (pasos 1 y 2 en Instrucciones para Tasker y Xposed Additions ).

O bien, puede optar por matar completamente la aplicación usando:

adb shell am force-stop <PKG_NAME>

Editar

Kitkat y superior tiene el comando mediacuyo uso es como,

adb shell media dispatch KEY

KEYpuede ser reproducir, pausar, reproducir-pausar, silenciar, colgar auriculares, detener, siguiente, anterior, rebobinar, grabar, avance rápido. ( Fuente )

Aunque lanzar la aplicación desde cero y enviar diferentes ubicaciones de Mp3 como datos también sería algo fácil de hacer.

Detuve el reproductor de música usando el comando "superior" dentro de adb shell y eliminé la identificación del proceso de la aplicación de música con acceso de superusuario (ROOT).

Instrucciones más detalladas harían de esta una buena respuesta.
@Peanut top muestra el nombre completo del paquete, no necesita más explicaciones. El uso de eventos clave y el envío de medios de parada es el camino a seguir.