Как я могу проверить, работает ли приложение на Android?
Я разработчик Android, и я хочу написать if
заявление в мое приложение. В этом заявлении я хочу проверить, работает ли браузер по умолчанию (браузер в ОС Android). Как я могу сделать это программно?
2 ответа:
добавить ниже вспомогательный класс:
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; } }
теперь вы можете проверить из приведенного ниже кода, если ваше желаемое приложение работает или нет:
if (Helper.isAppRunning(YourActivity.this, "com.your.desired.app")) { // App is running } else { // App is not running }
вы можете проверить это следующим способом
public 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; }