做了一个应用运行时间接口,首先将自己的service定义完成,自定义service流程在前面的文章里,方法实现是在

frameworks/base/services/core/java/com/android/server/customized/CustomizedService.java里,代码如下:

import android.app.usage.UsageStats;import android.app.usage.UsageStatsManager;import java.util.Map;import java.lang.System;import java.util.Calendar;import java.text.DateFormat;import android.text.format.DateUtils;        private UsageStatsManager mUsm;    private static final long USAGE_STATS_PERIOD = 1000 * 60 * 60 * 24 * 14;    private List mStats;     mUsm = (UsageStatsManager) mContext.getSystemService(Context.USAGE_STATS_SERVICE); //初始化UsageStatsManager  /*  *  获取所有应用运行时间  */    public String getAppTimeUsageInfo(){        long jh = Binder.clearCallingIdentity();        JSONArray json=new JSONArray();        mStats = getUsageList();        if(mStats.size()!=0 && mStats!=null){            for(int i=0;i getUsageList() {        long jh = Binder.clearCallingIdentity();        Calendar calendar = Calendar.getInstance();        calendar.add(Calendar.DAY_OF_YEAR, -5);        final List stats =mUsm.queryUsageStats(UsageStatsManager.INTERVAL_BEST,        calendar.getTimeInMillis(), System.currentTimeMillis());        Binder.restoreCallingIdentity(jh);        return stats;    }

这个方法获取的是系统所有应用的运行信息,如果需要单个应用的,可以通过包名进行过滤,

更多相关文章

  1. Android学习之Image操作及时间日期选择器
  2. android获得控制台log,打印控制台log
  3. 2011.09.14(2)——— android tabhost位于底部
  4. Android(安卓)Scroll
  5. Android列表组件ListView使用详解之数据为空提示信息
  6. Android(安卓)菜单(OptionMenu)大全
  7. Android(安卓)Camera Framework层分析
  8. Android(安卓)中判断是否存在虚拟按键
  9. android 向数据库写入图片信息 读取图片信息

随机推荐

  1. Android开发实践:WIFI扫描功能的封装
  2. 在android画面切换时设置跟随变动的小圆
  3. Android(安卓)studio 获取每次编译apk时
  4. android微信视频播放填坑指南
  5. FFMPEG android 多CPU架构快速编译方案
  6. Android(安卓)针对个人开发者的bmob支付
  7. Android利用BottomNavigationView默认底
  8. [置顶] 【一步一个脚印】Tomcat+MySQL为
  9. Android面试整理
  10. android Apk打包过程概述_android是如何