繁体   English   中英

Android:列出所有已安装的应用程序并获取每个应用程序的总运行时间

[英]Android: List all installed apps and get total running time of each app

如何列出所有已安装的应用程序以及每个应用程序的总运行时间并显示出来?

将此权限添加到您的 Android 清单文件中:

<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>

之后,您可以获得使用此 function 安装的应用程序列表:

public static List <ApplicationInfo> getUserInstalledApplications(Context context) {
    final PackageManager packageManager = context.getPackageManager();
    List < ApplicationInfo > installedApplications =
        packageManager.getInstalledApplications(PackageManager.GET_META_DATA);
    for (ApplicationInfo appInfo: installedApplications) {
        //Do what you want with app info
    }
}

您可以使用 ActivityManager.RunningServiceInfo 获取每个服务的启动时间列表。 主动从.

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 with component %s has been running since %s (%d milliseconds)",
             info.process, info.service.getClassName(), cal.getTime().toString(), info.activeSince));
 }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM