Android AlarmManager

Android AlarmManager Example Code

Android AlarmManager permits you to get to framework alert.

By the assistance of Android AlarmManager in android, you can plan your application to run at a particular time later on. It lives up to expectations whether your telephone is running or not.

The Android AlarmManager holds a CPU wake bolt that gives ensure not to rest the telephone until show is taken care of.

Android AlarmManager Example

activity_main.xml

File: 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"  
    tools:context=".MainActivity" >  
  
    <EditText  
        android:id="@+id/time"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_alignParentLeft="true"  
        android:layout_alignParentTop="true"  
        android:layout_marginTop="28dp"  
        android:ems="10"  
        android:hint="Number of seconds"  
        android:inputType="numberDecimal" />  
  
    <Button  
        android:id="@+id/button1"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:layout_alignRight="@+id/time"  
        android:layout_below="@+id/time"  
        android:layout_marginRight="60dp"  
        android:layout_marginTop="120dp"  
        android:text="Start" />  
  
</RelativeLayout>  


Activity class

File: MainActivity.java
package com.dheeruapps.alarmexample;  
  
import android.app.Activity;  
import android.app.AlarmManager;  
import android.app.PendingIntent;  
import android.content.Intent;  
import android.os.Bundle;  
import android.view.View;  
import android.view.View.OnClickListener;  
import android.widget.Button;  
import android.widget.EditText;  
import android.widget.Toast;  
  
public class MainActivity extends Activity {  
Button b1;  
  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.activity_main);  
        b1=(Button) findViewById(R.id.button1);  
      
        b1.setOnClickListener(new OnClickListener() {  
              
            @Override  
            public void onClick(View v) {  
                // TODO Auto-generated method stub  
                startAlert();  
            }  
        });  
      
}   public void startAlert() {  
        EditText text = (EditText) findViewById(R.id.time);  
        int i = Integer.parseInt(text.getText().toString());  
        Intent intent = new Intent(this, MyBroadcastReceiver.class);  
        PendingIntent pendingIntent = PendingIntent.getBroadcast(  
                                      this.getApplicationContext(), 234324243, intent, 0);  
        AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);  
        alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()  
                                      + (i * 1000), pendingIntent);  
        Toast.makeText(this"Alarm set in " + i + " seconds",Toast.LENGTH_LONG).show();  
    }  
  
}  

Let's create BroadcastReceiver class that starts alarm.

File: MyBroadcastReceiver.java
package com.example.alarmexample;  
import android.content.BroadcastReceiver;  
import android.content.Context;  
import android.content.Intent;  
import android.media.MediaPlayer;  
import android.widget.Toast;  
  
public class MyBroadcastReceiver extends BroadcastReceiver {  
    MediaPlayer mp;  
    @Override  
    public void onReceive(Context context, Intent intent) {  
        mp=MediaPlayer.create(context, R.raw.alrm   );  
        mp.start();  
        Toast.makeText(context, "Alarm....", Toast.LENGTH_LONG).show();  
    }  
}  

You need to provide a receiver entry in AndroidManifest.xml file.

File: AndroidManifest.xml

<receiver android:name="MyBroadcastReceiver" >  
</receiver>

We should see the full code of AndroidManifest.xml document.\
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     package="com.example.alarmexample"  
  4.     android:versionCode="1"  
  5.     android:versionName="1.0" >  
  6.   
  7.     <uses-sdk  
  8.         android:minSdkVersion="8"  
  9.         android:targetSdkVersion="16" />  
  10.   
  11.     <uses-permission android:name="android.permission.VIBRATE" />  
  12.   
  13.   
  14.     <application  
  15.         android:allowBackup="true"  
  16.         android:icon="@drawable/ic_launcher"  
  17.         android:label="@string/app_name"  
  18.         android:theme="@style/AppTheme" >  
  19.         <activity  
  20.             android:name="com.example.alarmexample.MainActivity"  
  21.             android:label="@string/app_name" >  
  22.             <intent-filter>  
  23.                 <action android:name="android.intent.action.MAIN" />  
  24.   
  25.                 <category android:name="android.intent.category.LAUNCHER" />  
  26.             </intent-filter>  
  27.         </activity>  
  28.   
  29.         <receiver android:name="MyBroadcastReceiver" >  
  30.         </receiver>  
  31.     </application>  
  32.   
  33. </manifest>  
Output -






0 comments:

Post a Comment

My Instagram