You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

安卓开发:如何将日志及当前运行应用列表输出至TextView?

解决方法:将运行应用列表显示到TextView中

嘿,作为安卓新手,我完全懂你想把获取到的运行应用信息展示在界面上的需求,咱们一步一步来搞定:

第一步:配置必要权限

首先,得在AndroidManifest.xml里添加获取任务列表的权限(注意:Android 11及以上版本对这个权限做了限制,只能获取当前应用的任务;如果要获取其他应用的信息,得适配新API,这里先基于你提供的代码说明):

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

第二步:准备布局中的TextView

在你的布局文件(比如activity_main.xml)里加一个TextView,建议用ScrollView包裹,避免内容太多显示不全:

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:id="@+id/tv_running_apps"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="16dp"
        android:textSize="14sp"/>
</ScrollView>

第三步:修改代码,把应用信息拼接后显示到TextView

你原来的代码是把信息打印到Logcat,现在咱们改用StringBuilder收集所有应用信息,最后把完整内容设置到TextView里:

// 先获取布局中的TextView实例
TextView runningAppsTv = findViewById(R.id.tv_running_apps);

final ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
final List<ActivityManager.RunningTaskInfo> recentTasks = activityManager.getRunningTasks(Integer.MAX_VALUE);

// 用StringBuilder拼接内容,比直接字符串拼接效率更高
StringBuilder appInfoBuilder = new StringBuilder();

for (int i = 0; i < recentTasks.size(); i++) {
    ActivityManager.RunningTaskInfo taskInfo = recentTasks.get(i);
    String appInfo = "Application executed : " + taskInfo.baseActivity.toShortString() + "\t\t ID: " + taskInfo.id + "\n";
    // 保留Log打印方便调试
    Log.d("Executed app", appInfo.trim());
    // 将信息添加到拼接器中
    appInfoBuilder.append(appInfo);
}

// 把最终拼接好的内容设置到TextView
runningAppsTv.setText(appInfoBuilder.toString());

额外提醒

  • 如果你的目标版本是Android 11(API 30)及以上,getRunningTasks()方法已经被废弃,GET_TASKS权限也不再生效,只能获取当前应用的任务。要是需要获取其他正在运行的应用,建议使用UsageStatsManager API,但这需要用户授权「使用情况访问权限」。
  • 用StringBuilder而不是直接循环拼接字符串,是因为循环里直接拼接会产生大量临时对象,效率很低,StringBuilder更适合这种批量拼接场景。

内容的提问来源于stack exchange,提问作者Ravi Sen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 06:44:42