package Ġcom . zer og dev . set my home . util Ċ Ċ import Ġandroid . app . Alarm Manager Ċ import Ġandroid . app . Pending Intent Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Build Ċ import Ġandroid . os . System Clock Ċ Ċ fun Ġstart Alarm ( content : ĠContext , Ġcls : ĠClass <* >, Ġid : ĠInt ) Ġ{ ĊĠĠĠ ĠIntent ( content , Ġcls ). let Ġ{ Ġintent Ġ-> ĊĠĠĠĠĠĠĠ ĠPending Intent . get Broadcast ( content , Ġid , Ġintent , ĠPending Intent . FLAG _ UPDATE _ CURRENT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. let Ġ{ Ġpending Intent Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġfirst Time Ġ= ĠSystem Clock . elapsed Realtime () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfirst Time Ġ+= Ġ( 3 0 Ġ* Ġ 6 0 Ġ* Ġ 1 0 0 0 ). to Long () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfirst Time Ġ+= Ġ( 1 0 Ġ* Ġ 1 0 0 0 ). to Long () Ġ// 1 0 ì ´Ī ĠíĽĦ ĠìķĮ ëŀ Į ĠìĿ´ë ² ¤íĬ¸ Ġë°ľ ìĥĿ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġalarm Manager Ġ= Ġcontent . getSystem Service ( Context . ALARM _ SERVICE ) Ġas ĠAlarm Manager ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Build . VERSION . SDK _ INT Ġ>= ĠBuild . VERSION _ CODES . M ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġalarm Manager . set Exact And Allow While Idle ( Alarm Manager . EL AP SED _ REAL TIME _ WAKE UP , Ġfirst Time , Ġpending Intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġalarm Manager . set ( Alarm Manager . EL AP SED _ REAL TIME _ WAKE UP , Ġfirst Time , Ġpending Intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ fun Ġcancel Alarm ( content : ĠContext , Ġcls : ĠClass <* >, Ġid : ĠInt ) Ġ{ ĊĠĠĠ Ġval Ġalarm Manager Ġ= Ġcontent . getSystem Service ( Context . ALARM _ SERVICE ) Ġas ĠAlarm Manager ĊĠĠĠ ĠIntent ( content , Ġcls ). let Ġ{ Ġintent Ġ-> ĊĠĠĠĠĠĠĠ ĠPending Intent . get Broadcast ( content , Ġid , Ġintent , ĠPending Intent . FLAG _ UPDATE _ CURRENT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġalarm Manager . cancel ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġexist Alarm ( content : ĠContext , Ġcls : ĠClass <* >, Ġid : ĠInt ): ĠBoolean Ġ{ ĊĠĠĠ ĠIntent ( content , Ġcls ). let Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠPending Intent . get Broadcast ( content , Ġid , Ġit , ĠPending Intent . FLAG _ NO _ CREATE ) Ġ!= Ġnull ĊĠĠĠ Ġ} Ċ }