欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

android判斷應(yīng)用是否已經(jīng)啟動的實例

 更新時間:2020年03月20日 09:37:51   作者:JayChan_95318  
這篇文章主要介紹了android判斷應(yīng)用是否已經(jīng)啟動的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

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

 /**
 * 判斷應(yīng)用是否已經(jīng)啟動
 *
 * @param context   上下文對象
 * @param packageName 要判斷應(yīng)用的包名
 * @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判斷當(dāng)前應(yīng)用是否啟動、app運行狀態(tài)、某個界面是否在前臺工具類整理

來直接看代碼吧! 

/**
 * 判斷當(dāng)前應(yīng)用是否啟動
 *
 * @param context
 * @return
 */
public static boolean getCurrentTask(Context context) {
	ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
	//獲取當(dāng)前所有存活task的信息
	List<RunningTaskInfo> appProcessInfos = activityManager.getRunningTasks(Integer.MAX_VALUE);
	//遍歷,若task的name與當(dāng)前task的name相同,則返回true,否則,返回false
	for (RunningTaskInfo process : appProcessInfos) {
		if (process.baseActivity.getPackageName().equals(context.getPackageName())
				|| process.topActivity.getPackageName().equals(context.getPackageName())) {
			return true;
		}
	}
	return false;
}
 
/**
 * 返回app運行狀態(tài)
 *
 * @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判斷應(yīng)用是否已經(jīng)啟動的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Android中實現(xiàn)滑動的七種方式總結(jié)

    Android中實現(xiàn)滑動的七種方式總結(jié)

    這篇文章主要介紹了Android中實現(xiàn)滑動的七種方式總結(jié),具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-02-02
  • 獲取Android設(shè)備電池電量狀態(tài)

    獲取Android設(shè)備電池電量狀態(tài)

    本文介紹了在Android系統(tǒng)中獲取設(shè)備電池電量狀態(tài)的方法,包括使用BatteryManager類獲取電量百分比、電池狀態(tài)和健康狀況,以及通過注冊廣播接收器實時獲取電量狀態(tài)變化。了解這些方法可以幫助用戶更好地管理設(shè)備的使用,避免因電量不足而影響使用體驗。
    2023-03-03
  • AndroidStudio4.0 New Class的坑(小結(jié))

    AndroidStudio4.0 New Class的坑(小結(jié))

    這篇文章主要介紹了AndroidStudio4.0 New Class的坑,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 詳解Android TextView屬性ellipsize多行失效的解決思路

    詳解Android TextView屬性ellipsize多行失效的解決思路

    這篇文章主要介紹了Android TextView屬性ellipsize多行失效的解決思路,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • Android?Flutter控件封裝之視頻進度條的實現(xiàn)

    Android?Flutter控件封裝之視頻進度條的實現(xiàn)

    這篇文章主要來和大家分享一個很簡單的控制器封裝案例,包含了基本的播放暫停,全屏和退出全屏,文中的示例代碼講解詳細,感興趣的可以了解一下
    2023-06-06
  • 在Android中訪問WebService接口的方法

    在Android中訪問WebService接口的方法

      最近公司有個項目需要從Android平臺訪問WebService接口,實現(xiàn)向發(fā)布的函數(shù)傳遞對象。在網(wǎng)上找了一些資料,發(fā)現(xiàn)使用ksoap2可以調(diào)用WebService傳遞對象。
    2013-05-05
  • 兩種Android打電話實現(xiàn)方法

    兩種Android打電話實現(xiàn)方法

    這篇文章主要為大家詳細介紹了兩種Android打電話實現(xiàn)方法,具有一定的實用性,感興趣的小伙伴們可以參考一下
    2016-08-08
  • flutter實現(xiàn)底部不規(guī)則導(dǎo)航欄

    flutter實現(xiàn)底部不規(guī)則導(dǎo)航欄

    這篇文章主要為大家詳細介紹了flutter實現(xiàn)底部不規(guī)則導(dǎo)航欄,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • Android數(shù)據(jù)庫LitePal的基本用法詳解

    Android數(shù)據(jù)庫LitePal的基本用法詳解

    這篇文章主要介紹了Android數(shù)據(jù)庫LitePal的基本用法詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • Android 使用Vitamio打造自己的萬能播放器(5)——在線播放(播放優(yōu)酷視頻)

    Android 使用Vitamio打造自己的萬能播放器(5)——在線播放(播放優(yōu)酷視頻)

    本文主要介紹Android Vitamio的使用,這里給大家提供效果圖和代碼實例,來說明Vitamio組件播放網(wǎng)絡(luò)視頻,有需要的小伙伴可以參考下
    2016-07-07

最新評論