Users Online

· Guests Online: 47

· Members Online: 0

· Total Members: 188
· Newest Member: meenachowdary055

Forum Threads

Newest Threads
No Threads created
Hottest Threads
No Threads created

Latest Articles

095 Java Android Program to Demonstrate AsynChronous Tasks in Android

Java Android Program to Demonstrate AsynChronous Tasks in Android

Here is source code of the Program to Demonstrate AsynChronous Tasks in Android. The program is successfully compiled and run on a Windows system using Eclipse Ide. The program output is also shown below.

MainActivity.java

package com.example.asynchrounous_tasks;
 
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
 
public class MainActivity extends Activity {
    String input = "redrum ... redrum";
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button start = (Button) findViewById(R.id.button1);
        start.setOnClickListener(new View.OnClickListener() {
 
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
 
                MyAsyncTask task = new MyAsyncTask();
                task.execute(input);
            }
        });
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
 
}

MyAsyntask.java

package com.example.asynchrounous_tasks;
 
import android.annotation.SuppressLint;
import android.os.AsyncTask;
import android.widget.Toast;
 
@SuppressLint("ShowToast")
class MyAsyncTask extends AsyncTask<String, Integer, String> {
    @Override
    protected String doInBackground(String... parameter) {
        // Moved to a background thread.
        String result = "";
        int myProgress = 0;
        int inputLength = parameter[0].length();
        // Perform background processing task, update myProgress]
        for (int i = 1; i <= inputLength; i++) {
            myProgress = i;
            result = result + parameter[0].charAt(inputLength - i);
            try {
                Thread.sleep(100);
            } catch (InterruptedException e) {
            }
            publishProgress(myProgress);
        }
        // Return the value to be passed to onPostExecute
        return result;
    }
 
    @Override
    protected void onProgressUpdate(Integer... progress) {
        // Synchronized to UI thread.
        // Update progress bar, Notification, or other UI elements
        // asyncProgress.setProgress(progress[0]);
        Toast.makeText(null, "in progress update" + progress[0],
                Toast.LENGTH_LONG).show();
    }
 
    @Override
    protected void onPostExecute(String result) {
        // Synchronized to UI thread.
        // Report results via UI update, Dialog, or notifications
    //    asyncTextView.setText(result);
        Toast.makeText(null, result, Toast.LENGTH_LONG).show();
    }
}

Activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >
 
    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:layout_marginTop="118dp"
        android:text="Demonstrating Asynchronous Tasks"
        android:textAppearance="?android:attr/textAppearanceLarge" />
 
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/textView1"
        android:layout_marginTop="74dp"
        android:text="Start Task" />
 
</RelativeLayout>

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.asynchrounous_tasks"
    android:versionCode="1"
    android:versionName="1.0" >
 
    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />
 
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.asynchrounous_tasks.MainActivity"
            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>
 
</manifest>

Comments

No Comments have been Posted.

Post Comment

Please Login to Post a Comment.

Ratings

Rating is available to Members only.

Please login or register to vote.

No Ratings have been Posted.
Render time: 0.80 seconds
10,841,893 unique visits