Soy un desarrollador de Android y quiero escribir una declaración if
en mi aplicación. En esta declaración, quiero verificar si el navegador predeterminado (navegador en sistema operativo Android) se está ejecutando. ¿Cómo puedo hacer esto programáticamente?¿Cómo puedo verificar si una aplicación se ejecuta en Android?
54
A
Respuesta
102
Añadir la Clase auxiliar a continuación:
public class Helper {
public static boolean isAppRunning(final Context context, final String packageName) {
final ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
final List<ActivityManager.RunningAppProcessInfo> procInfos = activityManager.getRunningAppProcesses();
if (procInfos != null)
{
for (final ActivityManager.RunningAppProcessInfo processInfo : procInfos) {
if (processInfo.processName.equals(packageName)) {
return true;
}
}
}
return false;
}
}
Ahora puede comprobar desde el código de abajo si su aplicación deseada está funcionando o no:
if (Helper.isAppRunning(YourActivity.this, "com.your.desired.app")) {
// App is running
} else {
// App is not running
}
-1
se puede comprobar mediante el método
siguientepublic static boolean isRunning(Context ctx) {
ActivityManager activityManager = (ActivityManager) ctx.getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> tasks = activityManager.getRunningTasks(Integer.MAX_VALUE);
for (ActivityManager.RunningTaskInfo task : tasks) {
if (ctx.getPackageName().equalsIgnoreCase(task.baseActivity.getPackageName()))
return true;
}
return false;
}
+0
¿Está trabajando sobre kitkat? en caso afirmativo, proporcione el código ... gracias –
Cuestiones relacionadas
- 1. ¿Cómo puedo verificar si el teléfono Android se está cargando?
- 2. ¿Verificar si se presionó la tecla Atrás en Android?
- 3. ¿Cómo puedo saber si mi aplicación Django se ejecuta en el servidor de desarrollo o no?
- 4. Verificar si el proceso se ejecuta cada minuto
- 5. Blueprint: ¿cómo puedo verificar si se cumple una dependencia opcional?
- 6. ¿Cómo puedo verificar si una imagen se precargó correctamente?
- 7. Determine si la aplicación se ejecuta en azul o no
- 8. ¿Cómo puedo verificar si mi aplicación tiene foco?
- 9. ¿Cómo puedo verificar si existe una cadena en una matriz?
- 10. ¿Cómo verificar si un usuario tiene una suscripción (facturación en la aplicación de Android)?
- 11. Cómo comprobar si Google Test se ejecuta en mi código
- 12. ¿Cómo puedo detectar si una aplicación de Android se está utilizando en Corea?
- 13. ¿Cómo puedo verificar si existe una variable en Scheme?
- 14. ¿Cómo puedo verificar si existe una cadena en otra cadena?
- 15. ¿Cómo puedo verificar si una IP está viva en Java?
- 16. ¿Cómo puedo verificar si se ha configurado JavaScript-Eventhandler?
- 17. ¿Cómo verificar si un SWF se está ejecutando como una aplicación de AIR?
- 18. cómo comprobar si sshd se ejecuta en una máquina remota
- 19. ¿Cómo puedo verificar si se lanza un objeto?
- 20. ¿Cómo verificar programáticamente si hay una aplicación instalada?
- 21. Cómo verificar si la URL es válida en Android
- 22. ¿Cómo puedo verificar si actualmente se está visualizando un UIViewController?
- 23. ¿Cómo comprobar si el programa se ejecuta desde una consola?
- 24. ¿Cómo puedo verificar si una vista es visible o no en Android?
- 25. ¿Cómo puedo verificar si una BST es válida?
- 26. ¿Cómo puedo verificar desde Android WebView si una página es una "página 404 no encontrada"?
- 27. ¿Cómo puedo saber si estoy en el depurador en Android?
- 28. Cómo verificar si Android "Datos móviles" está en
- 29. Determinar si la aplicación ASP.NET se ejecuta localmente
- 30. ¿Cómo puedo verificar si existe un directorio?
Buena pieza de código, thx! –
Thx, pero como veo cada vez que se ejecuta com.android.browser. Cuando está en primer plano, generalmente está en la 3ª o 4ª posición de la lista; de lo contrario, aún está en la lista. Entonces esta afirmación cada vez es verdadera. ¿Como puedó resolver esté problema? Solo cuando el proceso reciente es navegador, debe escribir "el navegador se está ejecutando". – sjor
un campo 'lru' en RunningAppProcessInfo le dará la información relativa del tiempo de ejecución de la aplicación para una referencia posterior. Consulte la página de documentación: http://developer.android.com/reference/android/app/ActivityManager.RunningAppProcessInfo.html – dhaval