Android编程判断当前指定App是否在前台的方法

本文实例讲述了Android编程判断当前指定App是否在前台的方法。分享给大家供大家参考,具体如下:

//在进程中去寻找当前APP的信息,判断是否在前台运行
private boolean isAppOnForeground() {
ActivityManager activityManager =(ActivityManager) getApplicationContext().getSystemService(
  Context.ACTIVITY_SERVICE);
String packageName =getApplicationContext().getPackageName();
List<RunningAppProcessInfo>appProcesses = activityManager.getRunningAppProcesses();
if (appProcesses == null)
return false;
for (RunningAppProcessInfo appProcess : appProcesses) {
if (appProcess.processName.equals(packageName)
    && appProcess.importance == RunningAppProcessInfo.IMPORTANCE_FOREGROUND) {
  return true;
}
}
return false;
}

希望本文所述对大家Android程序设计有所帮助。

(0)

相关推荐

  • Android判断App前台运行还是后台运行(运行状态)

    本文通过图文并茂的方式给大家介绍android判断app状态的相关内容,具体详情如下所示: 要了解这块,首先需要明白一些概念,app,process,task 1.process就是进程,是linux的概念. 2.一般一个app拥有一个uid,运行在一个进程里,如果app中给service等定义不同的uid,那Service就运行在另外一个进程里,也就是说uid就相当于进程的id一样,一个uid就代表一个进程:也可以几个app定义一个uid,那他们就运行在一个进程里了. 3.task是andro

  • Android 判断程序在前台运行还是后台运行

    就简单的一个方法,就不用写什么步骤了: public static boolean Frontdesk(Context context) { ActivityManager activityManager = (ActivityManager) context .getSystemService(Context.ACTIVITY_SERVICE); List<ActivityManager.RunningAppProcessInfo> appProcesses = activityManage

  • 判断Android程序是否在前台运行的两种方法

    @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 wh

  • Android应用程序转到后台并回到前台判断方法

    我们知道,当我们按返回或Home键退出应用程序的界面时,应用程序会在后台被挂起.这么设计的好处是,由于应用被系统缓存在内存中,那么在用户打开启动应用时就可以通过调用缓存,快速启动应用.当然,由于当今内存和处理器能力的限制,系统会自动关闭一些进程. 那么我如何判断这个应用程序在前台还是后台,应用从后台回到前台了? 看到一般都是runningProcess或者runningTasks来判断应用在前台还是后台 事实上,Android在SDK 14的时候提供了一个Callback.ActivityLif

  • Android判断当前App是在前台还是在后台

    本文实例为大家分享了Android判断当前App状态的具体实现代码,供大家参考,具体内容如下 第一种: /** *判断当前应用程序处于前台还是后台 * * @param context * @return */ public static boolean isApplicationBroughtToBackground(final Context context) { ActivityManager am = (ActivityManager) context.getSystemService(

  • Android判断当前应用程序处于前台还是后台的两种方法

    1.通过RunningTaskInfo类判断(需要额外权限): 复制代码 代码如下: /**     *判断当前应用程序处于前台还是后台     */    public static boolean isApplicationBroughtToBackground(final Context context) {        ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SER

  • Android编程判断当前指定App是否在前台的方法

    本文实例讲述了Android编程判断当前指定App是否在前台的方法.分享给大家供大家参考,具体如下: //在进程中去寻找当前APP的信息,判断是否在前台运行 private boolean isAppOnForeground() { ActivityManager activityManager =(ActivityManager) getApplicationContext().getSystemService( Context.ACTIVITY_SERVICE); String packag

  • Android编程判断当前应用是否在后台运行的方法示例

    本文实例讲述了Android编程判断当前应用是否在后台运行的方法.分享给大家供大家参考,具体如下: /** 判断程序是否在后台运行 */ public static boolean isRunBackground(Context context) { ActivityManager activityManager = (ActivityManager) context .getSystemService(Context.ACTIVITY_SERVICE); List<RunningAppProc

  • Android编程之高效开发App的10个建议

    本文讲述了Android编程之高效开发App的10个建议.分享给大家供大家参考,具体如下: 假如要Google Play上做一个最失败的案例,那最好的秘诀就是界面奇慢无比.耗电.耗内存.接下来就会得到用户的消极评论,最后名声也就臭了.即使你的应用设计精良.创意无限也没用. 耗电或者内存占用等影响产品效率的每一个问题都会影响App的成功.这就是为什么在开发中确保最优化.运行流畅而且不会使Android系统出问题 是至关重要的了.这里不需要讨论高效编程,因为我们不会关心你写的代码是否能够经得起测试.

  • Android编程判断网络是否可用及调用系统设置项的方法

    本文实例讲述了Android编程判断网络是否可用及调用系统设置项的方法.分享给大家供大家参考,具体如下: private boolean checkNetwork() { boolean flag = false; ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); if (manager.getActiveNetworkInfo() != null

  • Android编程判断手机上是否安装了某个程序的方法

    本文实例讲述了Android编程判断手机上是否安装了某个程序的方法.分享给大家供大家参考,具体如下: 1. 首先得到该程序的包名 这个连上手机ADB,看logcat就能看到.比如:QQ客户端的包名是com.tencent.mobileqq. 2. 然后通过PackageManager判断是否存在该包的程序 private boolean isPkgInstalled(String pkgName) { PackageInfo packageInfo = null; try { packageIn

  • Android编程判断应用程序是否已安装的方法

    本文实例讲述了Android编程判断应用程序是否已安装的方法.分享给大家供大家参考,具体如下: 这里以twitter程序为例,假设twitter程序包名为"com.twitter.android".这时候可用以下代码来判断是否被安装. PackageInfo packageInfo; try { packageInfo = this.getPackageManager().getPackageInfo( "com.twitter.android", 0); } ca

  • Android编程判断网络连接是否可用的方法

    本文实例讲述了Android编程判断网络连接是否可用的方法.分享给大家供大家参考,具体如下: 为了提高用户体验,我们在开发 android 应用的过程需要联网获取数据的时候我们首先要做的一步就是: 1.判断当前手机是否打开了网络 2.打开了网络是否可以上网 然后再去执行联网逻辑,避免没联网做不必要的工作! 通常情况下,我们是这样判断的 public static boolean isNetAvailable(Context context) { ConnectivityManager conne

  • Android编程判断是否连接网络的方法【WiFi及3G判断】

    本文实例讲述了Android编程判断是否连接网络的方法.分享给大家供大家参考,具体如下: 判断wifi网络是否链接: public static boolean isWiFiActive(Context inContext) { WifiManager mWifiManager = (WifiManager) inContext .getSystemService(Context.WIFI_SERVICE); WifiInfo wifiInfo = mWifiManager.getConnect

  • Android编程判断SD卡是否存在及使用容量查询实现方法

    本文实例讲述了Android编程判断SD卡是否存在及使用容量查询实现方法.分享给大家供大家参考,具体如下: 1.判断SD卡是否存在 返回true表示存在 /* 判断SD卡是否存在 返回true表示存在 */ public boolean avaiableMedia() { String status = Environment.getExternalStorageState(); if (status.equals(Environment.MEDIA_MOUNTED)) { return tru

  • android编程判断应用是否具有某个权限的方法

    本文实例讲述了android编程判断应用是否具有某个权限的方法.分享给大家供大家参考,具体如下: android在开发中有时候要判断应用中是否有某项权限,或者想获取到某个应用的权限清单,可以使用以下方法 1) 判断应用是否具有某个权限 PackageManager pm = getPackageManager(); boolean permission = (PackageManager.PERMISSION_GRANTED == pm.checkPermission("android.perm

随机推荐