[align=center]Android TaskManager (simple)[/align]
What is this: We will create a simple TaskManager ( better: Task-Lister as there is not yet real managing ).
Difficulty: 2 of 5
What it will look like:
[align=center]
[/align]
Description:
0. To read out the running Tasks we need a permission that we have to set in the AndroidManifest.xml of our current Project. If we would not set ('request') that permission our App would crash for security reasons.
Using xml Syntax Highlighting
- <uses-permission id="android.permission.GET_TASKS"/>
Parsed in 0.000 seconds, using GeSHi 1.0.8.4
The whole AndroidManifest.xml looks like this:
Using xml Syntax Highlighting
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="org.anddev.android.taskmanager">
- <uses-permission id="android.permission.GET_TASKS"/>
- <application android:icon="@drawable/icon">
- <activity class=".TaskManager" android:label="@string/app_name">
- <intent-filter>
- <action android:value="android.intent.action.MAIN" />
- <category android:value="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
- </application>
- </manifest>
Parsed in 0.002 seconds, using GeSHi 1.0.8.4
1. We will create one single/simpel function that will handle the whole setup. We call it updateTaskList(). It will grab the Systems IActivityManager. Request all tasks and display some info about them in a List.
Using java Syntax Highlighting
- @SuppressWarnings("unchecked")
- private void updateTaskList() {
- /* Grab the Systems IActivityManager. */
- IActivityManager myActivityManager = ActivityManagerNative.getDefault();
- /* Will hold all the task"".toString()"" entries */
- ArrayList<String> listEntries = new ArrayList<String>();
- try {
- int showLimit = 1;
- /* Get all Tasks available (with limit set). */
- List<IActivityManager.TaskInfo> allTasks = myActivityManager
- .getTasks(showLimit, 0, null);
- int i = 1;
- /* Loop through all tasks returned. */
- for (IActivityManager.TaskInfo aTask : allTasks) {
- listEntries
- .add("" + (i++) + ": "
- + aTask.baseActivity.getClassName() + " ID="
- + aTask.id);
- }
- } catch (DeadObjectException e) {
- Log.e("TaskManager", e.getMessage(), e);
- }
- /* Display out listEntries */
- setListAdapter(new ArrayAdapter<String>(this,
- android.R.layout.simple_list_item_1_small, listEntries));
- }
Parsed in 0.037 seconds, using GeSHi 1.0.8.4
[align=center]Thats it
[/align]
Regards,
plusminus







