Advertisement
huyhung94

AlarmService

Dec 1st, 2015
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.85 KB | None | 0 0
  1. public class AlarmService {
  2.     private PendingIntent pendingIntent;
  3.     private Context mContext;
  4.    
  5.     public AlarmService(Context context) {
  6.         mContext = context;
  7.         pendingIntent = PendingIntent.getBroadcast(context, 0, new Intent(context, AlarmReceiver.class), 0);
  8.     }
  9.  
  10.  
  11.     public void cancel() {
  12.         if (mContext != null) {
  13.             Object localObject = new Intent(mContext, AlarmReceiver.class);
  14.             localObject = PendingIntent.getBroadcast(this.mContext, 0, (Intent)localObject, 0);
  15.             ((AlarmManager)mContext.getSystemService(Context.ALARM_SERVICE)).cancel((PendingIntent)localObject);
  16.             Toast.makeText(mContext, "Đã tắt thông báo hàng ngày", Toast.LENGTH_SHORT).show();
  17.         }else{
  18. //            Toast.makeText(mContext, "Alarm can't cancel", Toast.LENGTH_SHORT).show();
  19.         }
  20.     }
  21.  
  22.     public void start() {
  23.         AlarmManager manager = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE);
  24.         SharedPreferences shared = PreferenceManager.getDefaultSharedPreferences(mContext);
  25.         shared.edit().putBoolean(SHARED_NOTI_DAILY, true).commit();
  26.         Toast.makeText(mContext, "Đã bật thông báo hàng ngày", Toast.LENGTH_SHORT).show();
  27.         int interval = 1000 * 60 * 1;
  28.  
  29.         Calendar calendar = Calendar.getInstance();
  30.         calendar.setTimeInMillis(System.currentTimeMillis());
  31.  
  32.         int hous = shared.getInt(SHARED_NOTI_HOURSE, 7);
  33.         int minute = shared.getInt(SHARED_NOTI_MINUTES, 0);
  34.         calendar.set(Calendar.HOUR_OF_DAY, hous);
  35.         calendar.set(Calendar.MINUTE, minute);
  36. //        manager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(),
  37. //                interval, pendingIntent);
  38.         manager.setInexactRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), interval,pendingIntent);
  39.     }
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement