In this application, we will learn how to use broadcast services and how to perform action in every minute. We used one analog clock and one text view to display time. Create a new project, open XML file and drop one analog clock and one text view in relative layout. The code of android XML file is given below:
Now open your Java file and use broadcast class just like in the previous example but here we are registering broadcast object with time tick intent filter which will be used to get updates every minute. The code is almost similar to the previous example except for the code in onReceive() method. First onCreate() method will be called, then after one minute onReceive() method will be called which will display time on Toast and Textview and this method will be called every minute. The code of the android Java file is given below:
Now run your project and test application.
Broadcast Receiver Android Example |
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:background="#abc" > <AnalogClock android:id="@+id/analogClock1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/textfield" android:layout_centerHorizontal="true" android:layout_marginTop="24dp" /> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/analogClock1" android:layout_centerHorizontal="true" android:layout_marginTop="30dp" android:textStyle="bold" android:textSize="25sp" android:text="Current time is processing ...." /> </RelativeLayout>
Now open your Java file and use broadcast class just like in the previous example but here we are registering broadcast object with time tick intent filter which will be used to get updates every minute. The code is almost similar to the previous example except for the code in onReceive() method. First onCreate() method will be called, then after one minute onReceive() method will be called which will display time on Toast and Textview and this method will be called every minute. The code of the android Java file is given below:
package com.smr.check_out_time; // Your Package name import java.util.Calendar; import android.app.Activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.Bundle; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends Activity { Context context=null; //broadcast class is used as nested class private BroadcastReceiver mtimeInfoReceiver = new BroadcastReceiver(){ @Override public void onReceive(Context c, Intent i) { //initialize objects TextView textv=(TextView)findViewById(R.id.textView1); Calendar calendar=Calendar.getInstance(); //display time on toast Toast.makeText(getApplicationContext(), "current time is--- :-"+calendar.getTime(), Toast.LENGTH_LONG).show(); //set time on text view textv.setText(""+calendar.getTime()); } }; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //use action time tick for getting update every minute IntentFilter mTime = new IntentFilter(Intent.ACTION_TIME_TICK); //register broadcast receiver registerReceiver(mtimeInfoReceiver, mTime); } }
Now run your project and test application.
No comments:
Post a Comment