• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java AndroidProcesses类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.jaredrummler.android.processes.AndroidProcesses的典型用法代码示例。如果您正苦于以下问题:Java AndroidProcesses类的具体用法?Java AndroidProcesses怎么用?Java AndroidProcesses使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



AndroidProcesses类属于com.jaredrummler.android.processes包,在下文中一共展示了AndroidProcesses类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: doInBackground

import com.jaredrummler.android.processes.AndroidProcesses; //导入依赖的package包/类
@Override protected Long doInBackground(Void... params) {
    long beforeMemory = 0;
    long endMemory = 0;
    ActivityManager.MemoryInfo memoryInfo
            = new ActivityManager.MemoryInfo();
    activityManager.getMemoryInfo(memoryInfo);
    beforeMemory = memoryInfo.availMem;
    List<ActivityManager.RunningAppProcessInfo> appProcessList
            = AndroidProcesses.getRunningAppProcessInfo(mContext);
    ApplicationInfo appInfo = null;
    for (ActivityManager.RunningAppProcessInfo info : appProcessList) {
        String packName = info.processName;
        try {
            packageManager.getApplicationInfo(info.processName, 0);
        } catch (PackageManager.NameNotFoundException e) {
            appInfo = getApplicationInfo(
                    info.processName.split(":")[0]);
            if (appInfo != null) {
                packName = info.processName.split(":")[0];
            }
        }
        List<Ignore> ignores = mFinalDb.findAllByWhere(Ignore.class,
                "packName='" + packName + "'");
        if (ignores.size() == 0) {
            L.e(info.processName);
            killBackgroundProcesses(info.processName);
        }
    }
    activityManager.getMemoryInfo(memoryInfo);
    endMemory = memoryInfo.availMem;
    return endMemory - beforeMemory;
}
 
开发者ID:towavephone,项目名称:MemoryCleaner,代码行数:33,代码来源:CoreService.java


示例2: isRunningForeground4

import com.jaredrummler.android.processes.AndroidProcesses; //导入依赖的package包/类
/**
     * 读取Linux系统内核保存在/proc目录下的process进程信息
     *
     * @return
     */

public boolean isRunningForeground4() {
    if (AndroidProcesses.isMyProcessInTheForeground()) {
        return true;
    }
    return false;
}
 
开发者ID:xzwc,项目名称:AndroidProject,代码行数:13,代码来源:BaseActivity.java


示例3: doInBackground

import com.jaredrummler.android.processes.AndroidProcesses; //导入依赖的package包/类
@Override protected List<AndroidAppProcess> doInBackground(Void... params) {
  List<AndroidAppProcess> processes = AndroidProcesses.getRunningAppProcesses();

  // sort by app name
  Collections.sort(processes, new Comparator<AndroidAppProcess>() {

    @Override public int compare(AndroidAppProcess lhs, AndroidAppProcess rhs) {
      return Utils.getName(context, lhs).compareToIgnoreCase(Utils.getName(context, rhs));
    }
  });

  return processes;
}
 
开发者ID:jaredrummler,项目名称:AndroidProcesses,代码行数:14,代码来源:AndroidAppProcessLoader.java


示例4: onCreate

import com.jaredrummler.android.processes.AndroidProcesses; //导入依赖的package包/类
@Override public void onCreate() {
  super.onCreate();
  AndroidProcesses.setLoggingEnabled(true);
  Picasso.setSingletonInstance(new Picasso.Builder(this)
      .addRequestHandler(new AppIconRequestHandler(this))
      .build());
}
 
开发者ID:jaredrummler,项目名称:AndroidProcesses,代码行数:8,代码来源:App.java


示例5: getRunningProcessesInfoByProc

import com.jaredrummler.android.processes.AndroidProcesses; //导入依赖的package包/类
/**
 * get running processes info by proc
 * @param context
 * @return
 */
public static List<ProcessInfoBean> getRunningProcessesInfoByProc(Context context) {
    ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
    PackageManager pm = context.getPackageManager();
    // get running app processes info
    List<AndroidAppProcess> processes = AndroidProcesses.getRunningAppProcesses();
    // create list. Specific it init size
    List<ProcessInfoBean> infos = new ArrayList<>(processes.size());
    for (AndroidAppProcess process: processes) {
        // create bean
        ProcessInfoBean bean = new ProcessInfoBean();
        // get package name
        bean.setPackageName(process.getPackageName());
        // check empty
        if(TextUtils.isEmpty(bean.getPackageName())) {
            continue;
        }
        // get package info
        ApplicationInfo applicationInfo = null;
        try {
            applicationInfo = pm.getApplicationInfo(bean.getPackageName(), PackageManager.GET_META_DATA);
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
            // if package is empty, continue
            continue;
        }
        // set icon
        bean.setIcon(applicationInfo.loadIcon(pm));
        // app name
        bean.setAppName(applicationInfo.loadLabel(pm).toString());
        // system app
        if ((applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
            bean.setSystemApp(true);
        }// if not, need set false. Actually it was.
        // memory
        Debug.MemoryInfo[] processMemoryInfo = am.getProcessMemoryInfo(new int[]{process.pid});
        if (processMemoryInfo.length >= 1) {
            bean.setMemory(processMemoryInfo[0].getTotalPss() * 1024);
        }
        // add to list
        infos.add(bean);
    }
    return infos;
}
 
开发者ID:ittianyu,项目名称:MobileGuard,代码行数:49,代码来源:ProcessManagerEngine.java


示例6: getRunningTasksStandard

import com.jaredrummler.android.processes.AndroidProcesses; //导入依赖的package包/类
private List<Task> getRunningTasksStandard() {
    List<Task> tasks = new ArrayList<>();
    List<AndroidAppProcess> list = AndroidProcesses.getRunningAppProcesses();

    if (list == null) return tasks;

    for (AndroidAppProcess process : list) {
        /** Exclude the app itself from the list */
        if (process.name.equals(BuildConfig.APPLICATION_ID)) continue;

        PackageInfo packageInfo = getPackageInfo(process, 0);

        if (packageInfo == null) continue;

        /** Remove system apps if necessary */
        if (isSystemApp(packageInfo) && SettingsUtils.isSystemAppsHidden(mContext)){
            continue;
        }

        /** Remove apps without label */
        if (packageInfo.applicationInfo == null) continue;

        String appLabel = packageInfo.applicationInfo.loadLabel(mPackageManager).toString();

        if (appLabel.isEmpty()) continue;

        Task task = getTaskByUid(tasks, process.uid);

        if (task == null) {
            task = new Task(process.uid, process.name);
            task.setPackageInfo(packageInfo);
            task.setLabel(appLabel);
            task.setMemory(getMemoryFromProcess(process));
            task.setIsAutoStart(isAutoStartApp(process.getPackageName()));
            task.setHasBackgroundService(hasBackgroundServices(process.getPackageName()));
            task.getProcesses().add(process.pid);
            tasks.add(task);
        } else {
            task.getProcesses().add(process.pid);
            task.setMemory(task.getMemory() + getMemoryFromProcess(process));
        }
    }

    if (! tasks.isEmpty()) {
        // Dirty quick sorting
        Collections.sort(tasks, new Comparator<Task>() {
            @Override
            public int compare(Task t1, Task t2) {
                return t1.getLabel().compareTo(t2.getLabel());
            }
        });
    }

    return tasks;
}
 
开发者ID:greenhub-project,项目名称:batteryhub,代码行数:56,代码来源:TaskController.java



注:本文中的com.jaredrummler.android.processes.AndroidProcesses类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java XSLoader类代码示例发布时间:2022-05-22
下一篇:
Java CreateResult类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap