时间:2021-05-02
? 1 2 3 4 5 6 7 8 9 @Override protected void onStop() { if (!isAppOnForeground()) { Debug.i("dwy", "enter background"); mIsBackground = true; } else { Debug.i("dwy", "foreground"); mIsBackground = false; }
Judge is App in background when onStop() get called.
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 public boolean isAppOnForeground() { // Returns a list of application processes that are running on the // device ActivityManager activityManager = (ActivityManager) getApplicationContext().getSystemService(Context.ACTIVITY_SERVICE); String packageName = getApplicationContext().getPackageName(); List<ActivityManager.RunningAppProcessInfo> appProcesses = activityManager .getRunningAppProcesses(); if (appProcesses == null) return false; for (ActivityManager.RunningAppProcessInfo appProcess : appProcesses) { // The name of the process that this object is associated with. if (appProcess.processName.equals(packageName) && appProcess.importance == ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND) { return true; } } return false; }方法二:
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 /** * 需要权限:android.permission.GET_TASKS * * @param context * @return */ public boolean isApplicationBroughtToBackground(Context context) { ActivityManager am = (ActivityManager) context .getSystemService(Context.ACTIVITY_SERVICE); List<RunningTaskInfo> tasks = am.getRunningTasks(1); if (tasks != null && !tasks.isEmpty()) { ComponentName topActivity = tasks.get(0).topActivity; Debug.i(TAG, "topActivity:" + topActivity.flattenToString()); Debug.f(TAG, "topActivity:" + topActivity.flattenToString()); if (!topActivity.getPackageName().equals(context.getPackageName())) { return true; } } return false; }声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Android编程判断当前指定App是否在前台的方法。分享给大家供大家参考,具体如下://在进程中去寻找当前APP的信息,判断是否在前台运行pri
Android实现按两次返回键退出程序(两种方法)第一种方法://是否退出程序privatestaticBooleanisExit=false;//定时触发器p
分两种情况,调用JS方法,和调用后台方法。 调用JS方法的如下。 有两种方法: 一、在前台: 二、在后台:Label1.Attributes.Add
如下所示:/***判断某个界面是否在前台**@paramcontextContext*@paramclassName界面的类名*@return是否在前台显示*/
Android判断后台服务是否开启的两种方法实例详解最近项目用到后台上传,就开启了一个服务service。但是刚开始用这种方法,有些机型不支持:酷派不支持。然后