acano

Alarm Manager Demo Activity

Mar 25th, 2016
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.84 KB | None | 0 0
  1. package com.example.CustomerUIDemo.activity.AlarmManagerDemo;
  2.  
  3.  
  4. import android.app.Activity;
  5. import android.app.AlarmManager;
  6. import android.app.PendingIntent;
  7. import android.content.Context;
  8. import android.content.Intent;
  9. import android.os.Bundle;
  10. import android.view.View;
  11. import android.view.View.OnClickListener;
  12. import android.widget.Button;
  13. import android.widget.Toast;
  14.  
  15. import com.example.CustomerUIDemo.R;
  16.  
  17. import java.util.Calendar;
  18. import java.util.GregorianCalendar;
  19. import java.util.TimeZone;
  20.  
  21. public class AlarmManagerDemoActivity extends Activity implements OnClickListener {
  22.  
  23. private AlarmManager alarmManager;
  24. private PendingIntent pendingIntent;
  25.  
  26. private Button setAlarmButton;
  27. private Button cancelAlarmButton;
  28.  
  29. @Override
  30. protected void onCreate(Bundle savedInstanceState) {
  31. super.onCreate(savedInstanceState);
  32. setContentView(R.layout.alarm_manager_demo_activity);
  33.  
  34. alarmManager = (AlarmManager) getBaseContext().getSystemService(Context.ALARM_SERVICE);
  35.  
  36. Intent intent = new Intent("com.example.CustomerUIDemo.AlarmManager.action");
  37. pendingIntent = PendingIntent.getBroadcast(getBaseContext(), 0,
  38. intent, PendingIntent.FLAG_UPDATE_CURRENT);
  39.  
  40.  
  41. setAlarmButton = (Button) findViewById(R.id.alarmManagerDemo_setAlarmButton);
  42. setAlarmButton.setOnClickListener(this);
  43.  
  44. cancelAlarmButton = (Button) findViewById(R.id.alarmManagerDemo_cancelAlarmButton);
  45. cancelAlarmButton.setOnClickListener(this);
  46.  
  47.  
  48. }
  49.  
  50. private void setAlarmManage() {
  51. TimeZone timeZone = TimeZone.getTimeZone("Asia/Taipei");
  52. Calendar calendar = new GregorianCalendar(timeZone);
  53.  
  54. // Add 10 seconds to now time.
  55. calendar.add(Calendar.SECOND, 10);
  56.  
  57.  
  58. // Every 1 hour alarm one time.
  59. // alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,
  60. // calendar.getTimeInMillis(), AlarmManager.INTERVAL_HOUR,
  61. // pendingIntent);
  62.  
  63. // Every 5 seconds alarm one time.
  64. alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,
  65. calendar.getTimeInMillis(), 5000,
  66. pendingIntent);
  67.  
  68. Toast.makeText(this, "Setting Alarm Manager", Toast.LENGTH_LONG).show();
  69. }
  70.  
  71. private void cancelAlarmManage(){
  72. alarmManager.cancel(pendingIntent);
  73. Toast.makeText(this, "Cancel Alarm Manager", Toast.LENGTH_LONG).show();
  74.  
  75. }
  76.  
  77. @Override
  78. public void onClick(View view) {
  79. switch (view.getId()) {
  80. case R.id.alarmManagerDemo_setAlarmButton:
  81. setAlarmManage();
  82. break;
  83.  
  84. case R.id.alarmManagerDemo_cancelAlarmButton:
  85. cancelAlarmManage();
  86. break;
  87.  
  88. default:
  89. break;
  90.  
  91. }
  92. }
  93.  
  94.  
  95. }
Advertisement
Add Comment
Please, Sign In to add comment