Android学习笔记(九)之Android(安卓)获取正在运行的Activity
16lz
2021-12-04
首先是新建一个Android工程,然后修改【main.xml】文件如下:
添加一个ListView
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" ><ListView android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/tasklist" /></LinearLayout>
然后编辑【java代码】
package com.cayden.run;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import android.app.Activity;import android.app.ActivityManager;import android.app.ActivityManager.RunningTaskInfo;import android.content.Context;import android.os.Bundle;import android.widget.ArrayAdapter;import android.widget.ListAdapter;import android.widget.ListView;public class MyActivityRunDemo extends Activity {private ListView tasklist=null;private ListAdapter adapter=null;private List<String> all=new ArrayList<String>();private ActivityManager activityManager=null; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); tasklist=(ListView)this.findViewById(R.id.tasklist); activityManager=(ActivityManager)super.getSystemService(Context.ACTIVITY_SERVICE); listActivity(); } public void listActivity(){ List<RunningTaskInfo> tasks=activityManager.getRunningTasks(30); Iterator<RunningTaskInfo> itInfo=tasks.iterator(); while(itInfo.hasNext()){ RunningTaskInfo info=itInfo.next(); all.add("【id="+info.id+"】,"+info.baseActivity.getClassName()); } adapter=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,this.all); tasklist.setAdapter(adapter); }}
最后需要再配置所需要的权限【AndroidManifest.xml】
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.cayden.run" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".MyActivityRunDemo" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-sdk android:minSdkVersion="8" /><uses-permission android:name="android.permission.GET_TASKS"></uses-permission></manifest>
程序运行效果如图所示:
更多获取详见ActivityManager的API文档
更多相关文章
- 【阿里云镜像】切换阿里巴巴开源镜像站镜像——Debian镜像
- Android上MediaScanner是如何工作的
- 新建ArcGIS Project for Android项目失败解决方案
- android 获取汉字拼音
- Android(安卓)Bundle类---activity之间通信
- EditText实时判断输入字符数
- Android(安卓)获取控件宽高的3种方法
- Android应用程序组件Content Provider的启动过程源代码分析(2)
- Android中创建与几种解析xml的方法!