關於android鬧鐘,設定定時提醒的一點心得

2021-09-06 14:45:31 字數 2646 閱讀 7955

首先在設定提醒之前你需要乙個入口,比如說onclick事件中,在此不做贅述。

01//傳送鬧鐘請求

02intent intent =newintent(mcontext, alarmreceiver.class);

03intent.setaction("something");

04intent.settype("something");

05intent.setdata(uri.empty);

06intent.addcategory(「something」);

07intent.setclass(context, alarmreceiver.class);

08// 以上給intent設定的四個屬性是用來區分你發給系統的鬧鐘請求的,當你想取消掉之前發的鬧鐘請求,這四個屬性,必須嚴格相等,所以你需要一些比較獨特的屬性,比如伺服器返回給你的json中某些特定字段。

09//當然intent中也可以放一些你要傳遞的訊息。

10pendingintent pendingintent = pendingintent.getbroadcast(context, alarmcount, intent,0);

11//alarmcount是你需要記錄的鬧鐘數量,必須保證你所發的alarmcount不能相同,最後乙個引數填0就可以。

12alarmmanager am = (alarmmanager) mcontext.getsystemservice(context.alarm_service);

13am.set(alarmmanager.rtc_wakeup, time, pendingintent);

14//這樣鬧鐘的請求就傳送出去了。time是你要被提醒的時間,單位毫秒,注意不是時間差。第乙個引數提醒的需求用我給出的就可以,感興趣的朋友,可以去google一下,這方面的資料非常多,一共有種,看一下就知道區別了。

15//取消鬧鐘請求

16intent intent =newintent(mcontext, alarmreceiver.class);

17intent.setaction("something");

18intent.settype(something);

19intent.setdata(uri.empty);

20intent.addcategory(something);

21intent.setclass(context, alarmreceiver.class);

22pendingintent pendingintent = pendingintent.getbroadcast(mcontext, alarmcount, intent,0);

23//alarmcount對應到你設定時的alarmcount,

24alarmmanager am = (alarmmanager) mcontext.getsystemservice(context.alarm_service);

25am.cancel(pendingintent);

26//接著,你需要乙個廣播接收的類:

27publicclassalarmreceiverextendsbroadcastreceiver

44}

Android 鬧鐘設定最新版

系統各種公升級,對鬧鐘設定也是個各種修改,前人送的福利大多數不能用了,只能自己整.public class alarmmanagerutil public static void cancelalarm context context,string action,int id 設定起床鈴 param...

鬧鐘定時提醒

1 查詢資料庫裡的設定是時間,內容 list list objectservice.planclockservice remindtime controller 2 public list remindtime 3 返回controller 定義兩個陣列 arraylist list3 new ar...

Android鬧鐘設定的解決方案

android設定鬧鐘並不像ios那樣這麼簡單,做過android設定鬧鐘的開發者都知道裡面的坑有多深。下面記錄一下,我解決android鬧鐘設定的解決方案。api19開始alarmmanager的機制修改。應用程式被kill掉後,設定的鬧鐘不響。6.0以上進入doze模式會使jobschedule...