久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

android判斷應用是否已經啟動的實例

瀏覽:111日期:2022-09-26 09:20:59

我就廢話不多說了,還是直接看代碼吧!

/** * 判斷應用是否已經啟動 * * @param context 上下文對象 * @param packageName 要判斷應用的包名 * @return boolean */public static boolean isAppAlive(Context context, String packageName) { ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); List<ActivityManager.RunningAppProcessInfo> processInfos = activityManager.getRunningAppProcesses(); for (int i = 0; i < processInfos.size(); i++) { if (processInfos.get(i).processName.equals(packageName)) {return true; } } return false;}

補充知識:android判斷當前應用是否啟動、app運行狀態、某個界面是否在前臺工具類整理

來直接看代碼吧!

/** * 判斷當前應用是否啟動 * * @param context * @return */public static boolean getCurrentTask(Context context) {ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);//獲取當前所有存活task的信息List<RunningTaskInfo> appProcessInfos = activityManager.getRunningTasks(Integer.MAX_VALUE);//遍歷,若task的name與當前task的name相同,則返回true,否則,返回falsefor (RunningTaskInfo process : appProcessInfos) {if (process.baseActivity.getPackageName().equals(context.getPackageName())|| process.topActivity.getPackageName().equals(context.getPackageName())) {return true;}}return false;} /** * 返回app運行狀態 * * @param context 一個context * @return int 1:前臺 2:后臺 0:不存在 */public static int isAppAlive(Context context) {String packageName = PackageUtil.getAppProcessName(context);ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);List<ActivityManager.RunningTaskInfo> listInfos = activityManager.getRunningTasks(20);// 判斷程序是否在棧頂if (listInfos.get(0).topActivity.getPackageName().equals(packageName)) {return 1;} else {// 判斷程序是否在棧里for (ActivityManager.RunningTaskInfo info : listInfos) {if (info.topActivity.getPackageName().equals(packageName)) {return 2;}}return 0;// 棧里找不到,返回0}} /** * 判斷某個界面是否在前臺 * * @param context * @param className 某個界面名稱 */public static boolean isActivityForeground(Context context, String className) {if (context == null || TextUtils.isEmpty(className)) {return false;}ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);List<ActivityManager.RunningTaskInfo> list = am.getRunningTasks(1);if (list != null && list.size() > 0) {ComponentName cpn = list.get(0).topActivity;if (className.equals(cpn.getClassName())) {return true;}}return false;}

以上這篇android判斷應用是否已經啟動的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Android
相關文章:
主站蜘蛛池模板: 旬邑县| 民丰县| 德兴市| 万载县| 榆林市| 土默特左旗| 县级市| 九台市| 连山| 德令哈市| 岑溪市| 福州市| 礼泉县| 凌海市| 镇雄县| 荆州市| 二连浩特市| 峨山| 永定县| 合作市| 云霄县| 彭州市| 平定县| 南靖县| 江陵县| 五指山市| 三台县| 平顶山市| 工布江达县| 安国市| 新沂市| 保德县| 沙河市| 大安市| 清徐县| 乡城县| 孟津县| 景德镇市| 扎赉特旗| 巴里| 宜丰县|