将代码从 logcat 输出重写为 TextView 输出

Rewrite code from logcat output to TextView output

我想重写以下代码以在 TextView 而不是 logcat 中输出。我该怎么做?

public static void printUsageStats(List<UsageStats> usageStatsList,Context context){

    for (UsageStats u : usageStatsList) {
        PackageManager pm = context.getPackageManager();
        PackageInfo foregroundAppPackageInfo = null;
        try {
            foregroundAppPackageInfo = pm.getPackageInfo(u.getPackageName(), 0);
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }
        if (u.getTotalTimeInForeground() > 0) {

            Log.d(TAG, "Pkg: " + foregroundAppPackageInfo.applicationInfo.loadLabel(pm).toString() + "\t"
                    + String.valueOf(((u.getTotalTimeInForeground() / 60000) / 60) / 24) + "d "
                    + String.valueOf(((u.getTotalTimeInForeground() / 60000) / 60) % 24) + "hr "
                    + String.valueOf((u.getTotalTimeInForeground() / 60000) % 60) + "m "
                    + String.valueOf((u.getTotalTimeInForeground() / 1000) % 60) + "s");
        }
    }
}

谢谢

只要把Log.d(TAG, "Your Text");改成textView.setText("Your Text");

应该像这样工作:

public static void printUsageStats(List<UsageStats> usageStatsList,Context context, TextView textView){

    for (UsageStats u : usageStatsList) {
        PackageManager pm = context.getPackageManager();
        PackageInfo foregroundAppPackageInfo = null;
        try {
            foregroundAppPackageInfo = pm.getPackageInfo(u.getPackageName(), 0);
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }
        if (u.getTotalTimeInForeground() > 0) {

            textView.setText("Pkg: " + foregroundAppPackageInfo.applicationInfo.loadLabel(pm).toString() + "\t"
                    + String.valueOf(((u.getTotalTimeInForeground() / 60000) / 60) / 24) + "d "
                    + String.valueOf(((u.getTotalTimeInForeground() / 60000) / 60) % 24) + "hr "
                    + String.valueOf((u.getTotalTimeInForeground() / 60000) % 60) + "m "
                    + String.valueOf((u.getTotalTimeInForeground() / 1000) % 60) + "s");
        }
    }
}