如何确定应用程序运行的时间?每次启动和关闭应用程序时是否有广播?
我正在尝试记录使用应用程序所花费的时间。
答案 0 :(得分:8)
如果您对记录自己的应用程序的使用感兴趣,可以使用System.currentTimeMillis()
来获取开始时间,并使用应用程序关闭时返回的值进行区分。
要获得应用程序启动的整个时间,您可能需要在最重要的Activity类的onCreate()
和onDestroy()
之间进行区分。对于应用程序位于前台的时间,请在每个Activity类中使用onResume()
和onPause()
,并将每个类的时间相加。
答案 1 :(得分:1)
代码:
ActivityManager activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningServiceInfo> services = activityManager.getRunningServices(Integer.MAX_VALUE);
long currentMillis = Calendar.getInstance().getTimeInMillis();
Calendar cal = Calendar.getInstance();
for (ActivityManager.RunningServiceInfo info : services) {
cal.setTimeInMillis(currentMillis-info.activeSince);
Log.i("TAG", String.format("Process %s has been running since: %d ms",info.process, info.activeSince));
}
logcat的:
TAG: Process com.android.bluetooth has been running since: 26526 ms
TAG: Process com.qualcomm.telephony has been running since: 68521 ms
TAG: Process com.motorola.ccc has been running since: 57456 ms
TAG: Process com.google.android.music:main has been running since: 26245 ms
TAG: Process com.android.phone has been running since: 29421 ms
TAG: Process com.motorola.ccc has been running since: 52141 ms
TAG: Process system has been running since: 28602 ms
TAG: Process com.motorola.actions has been running since: 74371 ms
TAG: Process com.motorola.ccc has been running since: 59166 ms
TAG: Process com.motorola.process.slpc has been running since: 25483 ms
TAG: Process com.android.systemui has been running since: 30142 ms
TAG: Process com.android.bluetooth has been running since: 22187 ms
TAG: Process system has been running since: 28603 ms
TAG: Process com.google.android.gms.persistent has been running since: 31621 ms
TAG: Process com.android.systemui has been running since: 27361 ms
TAG: Process com.google.android.gms.persistent has been running since: 99678 ms
TAG: Process com.motorola.contacts.preloadcontacts has been running since: 45603 ms
TAG: Process com.google.android.gms.persistent has been running since: 73457 ms
TAG: Process com.google.android.gms.persistent has been running since: 72908 ms
TAG: Process com.google.android.gms.persistent has been running since: 37251 ms
TAG: Process com.motorola.modemservice has been running since: 37049 ms
TAG: Process .esfm has been running since: 44187 ms
TAG: Process com.google.android.gms has been running since: 14875780 ms
TAG: Process com.google.android.gms.persistent has been running since: 94606 ms
TAG: Process com.motorola.ccc has been running since: 66227 ms
TAG: Process com.android.bluetooth has been running since: 31682 ms
TAG: Process com.motorola.modemservice has been running since: 37051 ms
TAG: Process com.android.bluetooth has been running since: 32869 ms
TAG: Process com.google.android.gms.persistent has been running since: 99691 ms
TAG: Process com.motorola.ccc has been running since: 92883 ms
TAG: Process com.motorola.cameraone has been running since: 75193 ms
TAG: Process com.motorola.ccc has been running since: 57465 ms
TAG: Process com.google.android.gms.persistent has been running since: 74054 ms
TAG: Process com.estrongs.android.pop has been running since: 42158 ms
TAG: Process com.motorola.process.system has been running since: 27632 ms
TAG: Process com.android.bluetooth has been running since: 26540 ms
TAG: Process com.google.android.gms.persistent has been running since: 42027 ms
TAG: Process com.estrongs.android.pop has been running since: 42334 ms
TAG: Process com.google.android.gms.persistent has been running since: 99627 ms
TAG: Process com.motorola.slpc has been running since: 25575 ms
TAG: Process com.snaptube.premium has been running since: 42312 ms
TAG: Process com.android.bluetooth has been running since: 27324 ms
TAG: Process com.estrongs.android.pop has been running since: 10845469 ms
TAG: Process com.qualcomm.qcrilmsgtunnel has been running since: 29328 ms
TAG: Process com.motorola.config.wifi has been running since: 50966 ms
TAG: Process com.google.android.gms has been running since: 13422977 ms
TAG: Process com.motorola.modemservice has been running since: 67877 ms
TAG: Process com.google.android.gms.persistent has been running since: 99699 ms
TAG: Process com.motorola.process.system has been running since: 93567 ms
TAG: Process com.android.systemui has been running since: 25460 ms
TAG: Process com.google.android.talk has been running since: 14632240 ms
TAG: Process system has been running since: 27605 ms
TAG: Process com.estrongs.android.pop:ka has been running since: 42437 ms
TAG: Process system has been running since: 28600 ms
TAG: Process com.google.android.gms.persistent has been running since: 40725 ms
TAG: Process com.motorola.slpc has been running since: 25556 ms
TAG: Process com.motorola.ccc has been running since: 57484 ms
TAG: Process com.google.android.gms.persistent has been running since: 35677 ms
TAG: Process com.google.android.gms.persistent has been running since: 32947 ms
TAG: Process com.snaptube.premium has been running since: 123580 ms
TAG: Process com.google.android.gms.persistent has been running since: 94452 ms
TAG: Process system has been running since: 28244 ms
TAG: Process com.estrongs.android.pop has been running since: 41920 ms
TAG: Process com.motorola.process.system has been running since: 68805 ms
TAG: Process system has been running since: 29054 ms
TAG: Process com.google.android.gms.persistent has been running since: 33060 ms
TAG: Process com.motorola.ccc has been running since: 52153 ms
TAG: Process com.google.android.gms.persistent has been running since: 31658 ms
TAG: Process com.google.android.gms.persistent has been running since: 28665 ms
TAG: Process com.google.android.gms.persistent has been running since: 30579 ms
TAG: Process com.google.android.inputmethod.latin has been running since: 27422 ms
TAG: Process com.motorola.motocare has been running since: 68330 ms
TAG: Process system has been running since: 25415 ms
TAG: Process com.motorola.ccc has been running since: 59215 ms
TAG: Process android.process.media has been running since: 13885530 ms
TAG: Process com.google.android.gms.persistent has been running since: 74301 ms
TAG: Process com.motorola.actions has been running since: 73981 ms
TAG: Process com.android.bluetooth has been running since: 27310 ms
TAG: Process com.motorola.process.system has been running since: 68538 ms
TAG: Process com.google.android.googlequicksearchbox:interactor has been running since: 27343 ms
TAG: Process system has been running since: 24919 ms
TAG: Process com.google.android.apps.messaging:rcs has been running since: 69945 ms
TAG: Process com.google.android.gms.persistent has been running since: 73045 ms
TAG: Process com.google.android.gms.persistent has been running since: 28213 ms
TAG: Process com.google.android.gms.persistent has been running since: 99706 ms
TAG: Process com.snaptube.premium has been running since: 39033 ms
TAG: Process com.android.bluetooth has been running since: 26533 ms
TAG: Process com.android.phone has been running since: 29411 ms
TAG: Process com.motorola.process.system has been running since: 94766 ms
TAG: Process com.snaptube.premium has been running since: 14530932 ms
TAG: Process com.android.bluetooth has been running since: 36311 ms
TAG: Process com.android.bluetooth has been running since: 26529 ms
TAG: Process com.google.android.gms.persistent has been running since: 24921 ms
TAG: Process com.google.android.gms has been running since: 90390 ms
TAG: Process org.mozilla.firefox has been running since: 80946 ms
TAG: Process com.motorola.actions has been running since: 73986 ms
OutPut:
答案 2 :(得分:0)
long millisSinceBoot = SystemClock.elapsedRealtime();
System.out.println("00000 "+millisSinceBoot);
System.out.println("11111 "+values.get(position).activeSince+" "+values.get(position).process);
long time = ((millisSinceBoot - values.get(position).activeSince)/1000);
int[] vals = splitToComponentTimes(time);
String time1 = vals[0]+":"+vals[1]+":"+vals[2];
time_list.add(time);
timer.setText(time1);
System.out.println("valssssss "+vals[0]+" "+vals[1]);