国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

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

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

瀏覽:75日期: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
相關文章:
主站蜘蛛池模板: 保定市| 台南市| 逊克县| 襄城县| 页游| 辽阳县| 惠安县| 定兴县| 黄龙县| 迁安市| 邵东县| 武陟县| 武夷山市| 宿松县| 定结县| 呼伦贝尔市| 巴彦县| 台山市| 田阳县| 武威市| 交城县| 舒兰市| 象山县| 沧源| 丰原市| 临海市| 津南区| 滦南县| 呼图壁县| 银川市| 湾仔区| 广安市| 鸡泽县| 宁远县| 陕西省| 固始县| 大埔县| 绵阳市| 扶沟县| 建阳市| 邢台县|