Android判斷當前App是在前臺還是在后臺
本文實例為大家分享了Android判斷當前App狀態(tài)的具體實現代碼,供大家參考,具體內容如下
第一種:
/**
*判斷當前應用程序處于前臺還是后臺
*
* @param context
* @return
*/
public static boolean isApplicationBroughtToBackground(final Context context) {
ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> tasks = am.getRunningTasks(1);
if (!tasks.isEmpty()) {
ComponentName topActivity = tasks.get(0).topActivity;
if (!topActivity.getPackageName().equals(context.getPackageName())) {
return true;
}
}
return false;
}
上面這段代碼是需要一個權限的:
< uses-permission Android:name=”android.permission.GET_TASKS” />
第二種:
下面這段代碼是我最新發(fā)現,無需權限,妥妥滴:
不過我稍微做了調整,后臺分為:service后臺和activity后臺,這里認為不是前臺的都認為后臺。
•service運行在后臺,appProcess.importance = IMPORTANCE_SERVICE,
•沒有service運行的后臺,
public static boolean isBackground(Context context) {
ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningAppProcessInfo> appProcesses = activityManager.getRunningAppProcesses();
for (ActivityManager.RunningAppProcessInfo appProcess : appProcesses) {
if (appProcess.processName.equals(context.getPackageName())) {
if (appProcess.importance == ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND) {
System.out.print(String.format("Foreground App:", appProcess.processName));
return false;
}else{
System.out.print("Background App:"+appProcess.processName);
return true;
}
}
}
return false;
}
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Android Studio格式化(Format)代碼快捷鍵介紹
這篇文章主要介紹了Android Studio格式化(Format)代碼快捷鍵,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-01-01
Android 系統服務TelecomService啟動過程原理分析
這篇文章主要介紹了Android 系統服務TelecomService啟動過程原理分析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-07-07
Android 中通過實現線程更新Progressdialog (對話進度條)
這篇文章主要介紹了Android 中通過實現線程更新Progressdialog (對話進度條)的相關資料,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2016-11-11
使用Android開發(fā)接入第三方原生SDK實現微信登錄
這篇文章主要介紹了使用Android開發(fā)接入第三方原生SDK實現微信登錄,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03
Android progressbar實現帶底部指示器和文字的進度條
這篇文章主要為大家詳細介紹了Android progressbar實現帶底部指示器和文字的進度條,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-01-01

