package Ġcom . gy f . c act us Ċ Ċ import Ġandroid . app . Notification Ċ import Ġandroid . app . Notification Channel Ċ import Ġandroid . app . Pending Intent Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . Bitmap Ċ import Ġandroid . os . Build Ċ import Ġandroid . widget . Remote Views Ċ import Ġcom . gy f . c act us . callback . C act us Background Callback Ċ import Ġcom . gy f . c act us . callback . C act us Callback Ċ import Ġcom . gy f . c act us . entity . C act us Config Ċ import Ġcom . gy f . c act us . entity . Default Config Ċ import Ġcom . gy f . c act us . entity . Notification Config Ċ import Ġcom . gy f . c act us . ext . register Ċ import Ġcom . gy f . c act us . pix . One Pix Model Ċ Ċ /** Ċ Ġ* ĠC act us ä¿Ŀ æ´» æĸ¹æ¡Ī ï¼Į C act us æľī ä¸¤ç§į å½¢å¼ı å¤ĦçĲĨ åĽŀè°ĥ äºĭä»¶ ï¼Į Ċ Ġ* Ġ ç¬¬ ä¸Ģç§į ä½¿çĶ¨ C act us Callback ï¼Į Ċ Ġ* Ġ ç¬¬äºĮ ç§į æ³¨åĨĮ C ACT US _ WORK åĴĮ C ACT US _ STOP å¹¿ æĴŃ çĽĳåĲ¬ åĻ¨ Ċ Ġ* Ċ Ġ* Ġ@ author Ġge y if eng Ċ Ġ* Ġ@ date Ġ 2 0 1 9 - 0 8 - 2 8 Ġ 1 7 : 2 2 Ċ Ġ*/ Ċ class ĠC act us Ġprivate Ġconstructor () Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ éĢļçŁ¥ æłı ä¿¡æģ¯ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġvar Ġm Notification Config Ġ= ĠNotification Config () ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġé»ĺè®¤ éħįç½® ä¿¡æģ¯ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġval Ġm Default Config Ġ= ĠDefault Config () ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ è¿Ĳè¡Į æĹ¶ åĽŀè°ĥ å¹¿ æĴŃ ACTION ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠC ACT US _ WORK Ġ= Ġ" com . gy f . c act us . work " ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ åģľæŃ¢ æĹ¶ åĽŀè°ĥ å¹¿ æĴŃ ACTION ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠC ACT US _ STOP Ġ= Ġ" com . gy f . c act us . stop " ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ åĲİåı° åĽŀè°ĥ å¹¿ æĴŃ ACTION ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠC ACT US _ BACKGROUND Ġ= Ġ" com . gy f . c act us . background " ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ åīį åı° åĲİ è°ĥ å¹¿ æĴŃ ACTION ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠC ACT US _ FO REG ROUND Ġ= Ġ" com . gy f . c act us . foreground " ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġkey ï¼Į éĢļè¿ĩ å¹¿ æĴŃ å½¢å¼ı èİ·åıĸ åĲ¯åĬ¨ æ¬¡æķ° ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠC ACT US _ TIMES Ġ= Ġ" times " ĊĠĠĠĠĠĠĠ Ġinternal Ġconst Ġval ĠC ACT US _ TAG Ġ= Ġ" c act us " ĊĠĠĠĠĠĠĠ Ġinternal Ġconst Ġval ĠC ACT US _ CONFIG Ġ= Ġ" c act us Config " ĊĠĠĠĠĠĠĠ Ġinternal Ġconst Ġval ĠC ACT US _ NOTIFICATION _ CONFIG Ġ= Ġ" notification Config " ĊĠĠĠĠĠĠĠ Ġinternal Ġconst Ġval ĠC ACT US _ SERVICE _ ID Ġ= Ġ" service Id " ĊĠĠĠĠĠĠĠ Ġinternal Ġval ĠCALL BACK S Ġ= Ġarray ListOf < C act us Callback >() ĊĠĠĠĠĠĠĠ Ġinternal Ġval ĠBACK GROUND _ CALLBACK S Ġ= Ġarray ListOf < C act us Background Callback >() ĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġm C act us Config Ġ= ĠC act us Config () ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġval Ġinstance Ġby Ġlazy Ġ{ ĠC act us () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè®¾ç½® notification ï¼Į éĿŀ å¿ħ ä¼ł ï¼Į å¦Ĥæŀľ ä¸į ä¼ł ï¼Į å°Ĩ ä½¿çĶ¨ çĶ¨æĪ· æł¹æį® api è®¾ç½® çļĦä¿¡æģ¯ æŀĦå»º Notification ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġnotification ĠNotification ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Notification ( notification : ĠNotification ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . notification Ġ= Ġnotification ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè®¾ç½® Notification Channel ï¼Į éĿŀ å¿ħ ä¼ł ï¼Į å¦Ĥæŀľ ä¸į ä¼ł ï¼Į å°Ĩ ä½¿çĶ¨ é»ĺè®¤ çļĦ Notification Channel ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġnotification Channel ĠNotification Channel ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Notification Channel ( notification Channel : ĠNotification Channel ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( Build . VERSION . SDK _ INT Ġ>= ĠBuild . VERSION _ CODES . O ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Notification Config . notification Channel Ġ= Ġnotification Channel ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæĺ¯åĲ¦ éļĲèĹı éĢļçŁ¥ æłı ï¼Į ç»ı æµĭè¯ķ ï¼Į éĻ¤äºĨ android Ġ 7 . 1 æīĭæľº ä¹ĭ å¤ĸ éĥ½ åı¯ä»¥ éļĲèĹı ï¼Į é»ĺè®¤ éļĲèĹı ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġhide ĠBoolean ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġhide Notification ( hide : ĠBoolean ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . hide Notification Ġ= Ġhide ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæĺ¯åĲ¦ éļĲèĹı Android Ġ 8 . 0 ä»¥ä¸Ĭ éĢļçŁ¥ æłı ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġhide ĠBoolean ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġhide Notification After O ( hide : ĠBoolean ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . hide Notification After O Ġ= Ġhide ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè®¾ç½® Pending Intent ï¼Į çĶ¨æĿ¥ å¤ĦçĲĨ éĢļçŁ¥ æłı çĤ¹åĩ» äºĭä»¶ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġpending Intent ĠPending Intent ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Pending Intent ( pending Intent : ĠPending Intent ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . pending Intent Ġ= Ġpending Intent ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠæľįåĬ¡ Id ï¼Į é»ĺè®¤ æĺ¯ 1 åĪ° Int . MAX _ VALUE éļıæľº æķ° ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġservice Id ĠInt ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Service Id ( service Id : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . service Id Ġ= Ġservice Id ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæ¸ ł éģĵ Id ï¼Į é»ĺè®¤ æĺ¯ Water Be ar ï¼Į å»ºè®® çĶ¨æĪ· ä¿®æĶ¹ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġchannel Id ĠString ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Channel Id ( channelId : ĠString ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . channelId Ġ= Ġchannel Id ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæ¸ ł éģĵ åĲį ï¼Į çĶ¨äºİ è®¾ç½® éĩĮ éĢļçŁ¥ æ¸ ł éģĵ å±ķç¤º ï¼Į é»ĺè®¤ æĺ¯ Water Be ar ï¼Į å»ºè®® çĶ¨æĪ· ä¿®æĶ¹ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġchannel Name ĠString ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Channel Name ( channel Name : ĠString ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . channel Name Ġ= Ġchannel Name ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ éĢļçŁ¥ æłı æłĩé¢ĺ ï¼Į é»ĺè®¤ æĺ¯ Water Be ar ï¼Į å»ºè®® çĶ¨æĪ· ä¿®æĶ¹ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġtitle ĠString ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun ĠsetTitle ( title : ĠString ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . title Ġ= Ġtitle ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ éĢļçŁ¥ æłı åĨħå®¹ ï¼Į é»ĺè®¤ æĺ¯ Water Be ar Ġis Ġrunning ï¼Į å»ºè®® çĶ¨æĪ· ä¿®æĶ¹ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġcontent ĠString ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Content ( content : ĠString ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . content Ġ= Ġcontent ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè®¾ç½® Remote Views ï¼Ī èĩªå®ļä¹ī å¸ĥå±Ģ ï¼īï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġremote Views ĠRemote Views ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Remote Views ( remote Views : ĠRemote Views ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . hide Notification Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġm Notification Config . remote Views Ġ= Ġremote Views ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè®¾ç½® Big Remote Views ï¼Ī èĩªå®ļä¹ī å¸ĥå±Ģ ï¼īï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġbig Remote Views ĠRemote Views ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Big Remote Views ( big Remote Views : ĠRemote Views ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . hide Notification Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġm Notification Config . big Remote Views Ġ= Ġbig Remote Views ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ éĢļçŁ¥ æłı å°ı åĽ¾ æłĩ ï¼Į é»ĺè®¤ æĺ¯ åºĵ éĩĮ çļĦ åĽ¾ æłĩ ï¼Į å»ºè®® çĶ¨æĪ· ä¿®æĶ¹ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġsmall Icon ĠInt ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Small Icon ( small Icon : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . small Icon Ġ= Ġsmall Icon ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ éĢļçŁ¥ æłı å¤§ åĽ¾ æłĩ ï¼Į é»ĺè®¤ æĺ¯ åºĵ éĩĮ çļĦ åĽ¾ æłĩ ï¼Į å»ºè®® çĶ¨æĪ· ä¿®æĶ¹ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġlarge Icon ĠInt ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Large Icon ( large Icon : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . large Icon Ġ= Ġlarge Icon ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ éĢļçŁ¥ æłı å¤§ åĽ¾ æłĩ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġlarge Icon ĠBitmap ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Large Icon ( large Icon : ĠBitmap ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Notification Config . large Icon Bitmap Ġ= Ġlarge Icon ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæĺ¯åĲ¦ åı¯ä»¥ æĴŃæĶ¾ éŁ³ ä¹Ĳ ï¼Į é»ĺè®¤ åı¯ä»¥ æĴŃæĶ¾ éŁ³ ä¹Ĳ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġenabled ĠBoolean ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Music Enabled ( enabled : ĠBoolean ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Default Config . music Enabled Ġ= Ġenabled ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ åĲİåı° æĺ¯åĲ¦ åı¯ä»¥ æĴŃæĶ¾ éŁ³ ä¹Ĳ ï¼Į é»ĺè®¤ ä¸į åı¯ä»¥ åĲİåı° æĴŃæĶ¾ éŁ³ ä¹Ĳ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġenabled ĠBoolean ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Background Music Enabled ( enabled : ĠBoolean ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Default Config . background Music Enabled Ġ= Ġenabled ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè®¾ç½® èĩªå®ļä¹ī éŁ³ ä¹Ĳ ï¼Į é»ĺè®¤ æĺ¯ æĹł å£° éŁ³ ä¹Ĳ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġmusic Id ĠInt ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Music Id ( music Id : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Default Config . music Id Ġ= Ġmusic Id ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè®¾ç½® éŁ³ ä¹Ĳ éĹ´ éļĶ æĹ¶éĹ´ ï¼Į æĹ¶éĹ´ éĹ´ éļĶ è¶Ĭ éķ¿ ï¼Į è¶Ĭ çľģ çĶµ ï¼Į é»ĺè®¤ éĹ´ éļĶ æĹ¶éĹ´ æĺ¯ 0 ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġrepeat Interval ĠLong ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Music Interval ( repeat Interval : ĠLong ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( repeat Interval Ġ>= Ġ 0 L ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Default Config . repeat Interval Ġ= Ġrepeat Interval ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæĺ¯åĲ¦ åı¯ä»¥ä½¿çĶ¨ ä¸Ģ åĥı ç´ł ï¼Į é»ĺè®¤ åı¯ä»¥ä½¿çĶ¨ ï¼Į åıªæľī åľ¨ android Ġp ä»¥ä¸ĭ åı¯ä»¥ä½¿çĶ¨ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġenabled ĠBoolean ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset One Pix Enabled ( enabled : ĠBoolean ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Default Config . one Pix Enabled Ġ= Ġenabled ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġä¸Ģ åĥı ç´ł æ¨¡å¼ı ï¼Į æĦŁ è§ī æ²¡ åķ ¥ çĶ¨ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġone Pix Model ĠOne Pix Model ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset One Pix Model ( one Pix Model : ĠOne Pix Model ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Default Config . one Pix Model Ġ= Ġone Pix Model ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæĺ¯åĲ¦ Debug æ¨¡å¼ı ï¼Į é»ĺè®¤ æ²¡æľī è°ĥè¯ķ ä¿¡æģ¯ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġis Debug ĠBoolean ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġis Debug ( isDebug : ĠBoolean ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġm Default Config . debug Ġ= Ġis Debug ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ å¢ŀåĬł åĽŀè°ĥ ï¼Į çĶ¨äºİ å¤ĦçĲĨ ä¸ĢäºĽ é¢Ŀ å¤ĸ çļĦ å·¥ä½ľ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġwater Be ar Callback ĠC act us Callback ĊĠĠĠĠ Ġ* Ġ@ return ĠC act us ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġadd Callback ( water Be ar Callback : ĠC act us Callback ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ ĠCALL BACK S . add ( water Be ar Callback ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ å¢ŀåĬł åĽŀè°ĥ ï¼Į lambda å½¢å¼ı ï¼Į çĶ¨äºİ å¤ĦçĲĨ ä¸ĢäºĽ é¢Ŀ å¤ĸ çļĦ å·¥ä½ľ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġstop ĠFunction 0 < Unit > ĊĠĠĠĠ Ġ* Ġ@ param Ġwork ĠFunction 1 < Int , ĠUnit > ĊĠĠĠĠ Ġ* Ġ@ return ĠWater Be ar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġadd Callback ( stop : Ġ(() Ġ-> ĠUnit )? Ġ= Ġnull , Ġwork : Ġ( Int ) Ġ-> ĠUnit ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ ĠCALL BACK S . add ( object Ġ: ĠC act us Callback Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġdo Work ( times : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwork ( times ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Stop () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstop ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ åīį åĲİåı° åĪĩæį¢ åĽŀè°ĥ ï¼Į çĶ¨äºİ å¤ĦçĲĨ app åīį åĲİåı° åĪĩæį¢ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġwater Be ar Background Callback ĠC act us Background Callback ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġadd Background Callback ( water Be ar Background Callback : ĠC act us Background Callback ) Ġ{ ĊĠĠĠĠĠĠĠ ĠBACK GROUND _ CALLBACK S . add ( water Be ar Background Callback ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ åīį åĲİåı° åĪĩæį¢ åĽŀè°ĥ ï¼Į çĶ¨äºİ å¤ĦçĲĨ app åīį åĲİåı° åĪĩæį¢ ï¼Į éĿŀ å¿ħ ä¼ł ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġblock ĠFunction 1 < Boolean , ĠUnit > ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġadd Background Callback ( block : Ġ( Boolean ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ ĠBACK GROUND _ CALLBACK S . add ( object Ġ: ĠC act us Background Callback Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Background ( background : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock ( background ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ å¿ħé¡» è°ĥçĶ¨ ï¼Į å»ºè®® åľ¨ Application éĩĮ åĪĿå§ĭåĮĸ ï¼Į ä½¿çĶ¨ Kotlin æī©å±ķ åĩ½æķ° ä¸įéľĢè¦ģ è°ĥçĶ¨ æŃ¤ æĸ¹æ³ķ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġcontext ĠContext ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġregister ( context : ĠContext ) Ġ{ ĊĠĠĠĠĠĠĠ Ġm C act us Config Ġ= ĠC act us Config ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Notification Config , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Default Config ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġcontext . register ( m C act us Config ) ĊĠĠĠ Ġ} Ċ }