2012-02-16 19 views
5

Puedo iniciar aplicaciones nativas usando am start -a action -n packagename/activity. ¿Cómo puedo matar/detener una aplicación nativa desde adb shell?¿Cómo matar aplicaciones nativas de 'adb shell'?

+0

usando mi ubuntu anfitrión – RanjitRock

+1

posible duplicado de [Detener una aplicación para Android desde la consola] (http://stackoverflow.com/questions/3117095/stopping-an-android-app-from-console) – janot

Respuesta

9

Chirag suprimido, así que aquí está otra vez:

adb shell ps | grep com.myapp | awk '{print $2}' | xargs adb shell kill 

Esto se va a ejecutar fuera del emulador. Es un largo comando Unix, no cuatro comandos con una separación visual. | es la sintaxis, interpretada por el shell (de Ubuntu), que luego canaliza la salida de adb, grep, etc., a la siguiente. Solo ps se ejecuta en el emulador.

+0

Solo el '' adb shell ps | grep $ 1 | La porción awk '{print $ 2}' '' es excelente para extraer solo el PID de una aplicación nombrada ($ 1 en este ejemplo). – scorpiodawg

+1

Si no puede eliminar el servicio porque necesita acceso de administrador, modifique la última parte para que refleje 'xargs adb shell 'su -c kill''. Además, http://stackoverflow.com/a/9418553/198348 está relacionado. –

+0

"Operación no permitida" –

1

Pruebe el siguiente comando en adb shell.

adb shell kill <PID> 
+0

grep doesnot Trabajar en el shell de Android – RanjitRock

+1

@ user774217, Eso no debe ejecutarse en el shell de Android. ¿Ves que comienza con 'adb shell'? Pruébalo en Ubuntu. –

+0

Julian Fondren tiene razón. por favor pruébalo en tu terminal ubantu. –

24
adb shell am force-stop packagename 
+0

Esto funciona muy bien si está en Windows, o algo que no sea Unix. –

+1

@SteveRichey ¿Por qué esto no funcionaría en Unix? Lo probé en Ubuntu 14.04 y funciona muy bien. –

+2

@ChrisFoster Solo quise decir que, a diferencia de la respuesta principal (que no funciona en Windows), esto funciona para los usuarios de Windows. –

Cuestiones relacionadas