zoukankan      html  css  js  c++  java
  • Android 判断APP前台,后台运行

    public void checkAppState() {
    ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE);

    String[] activePackages;
    if (Build.VERSION.SDK_INT > Build.VERSION_CODES.KITKAT_WATCH) {
    activePackages = getActivePackages(am);
    } else {
    activePackages = getActivePackagesCompat(am);
    }
    if (activePackages != null) {
    for (String activePackage : activePackages) {
    if (activePackage.equals(getPackageName())) {
    //Calendar app is launched, do something
    }else{

    }
    }
    }
    }

    protected String[] getActivePackagesCompat(ActivityManager mActivityManager) {
    final List<ActivityManager.RunningTaskInfo> taskInfo = mActivityManager.getRunningTasks(1);
    final ComponentName componentName = taskInfo.get(0).topActivity;
    final String[] activePackages = new String[1];
    activePackages[0] = componentName.getPackageName();
    return activePackages;
    }

    protected String[] getActivePackages(ActivityManager mActivityManager) {
    final Set<String> activePackages = new HashSet<String>();
    final List<ActivityManager.RunningAppProcessInfo> processInfos = mActivityManager.getRunningAppProcesses();
    for (ActivityManager.RunningAppProcessInfo processInfo : processInfos) {
    if (processInfo.importance == ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND) {
    activePackages.addAll(Arrays.asList(processInfo.pkgList));
    }
    }
    return activePackages.toArray(new String[activePackages.size()]);
    }
  • 相关阅读:
    夯实JavaScript基础之prototype, __proto__, instanceof
    入住博客园
    基础知识盲点——2
    Vuecli开发笔记三引入外部插件
    转让阿里云服务器(CPU2G+内存2G+带宽5M+硬盘150G)
    ubuntu 1
    ftp命令
    mysql数据库备份及恢复命令mysqldump,source的用法
    wordpress option的操作
    wordpress作者角色添加不了视频代码
  • 原文地址:https://www.cnblogs.com/farmerkids/p/7149129.html
Copyright © 2011-2022 走看看