package Ġcom . li any i . pa im ons notebook . card . app widget Ċ Ċ import Ġandroid . app . Pending Intent Ċ import Ġandroid . app widget . App Widget Manager Ċ import Ġandroid . app widget . App Widget Provider Ċ import Ġandroid . content . Component Name Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . os . Build Ċ import Ġandroid . widget . Remote Views Ċ import Ġcom . li any i . pa im ons notebook . R Ċ import Ġcom . li any i . pa im ons notebook . card . Card Util Ċ import Ġcom . li any i . pa im ons notebook . card . Card Util . c Show Ċ import Ġcom . li any i . pa im ons notebook . card . service . Get Daily Note Service Ċ Ċ class ĠCard Res in Type 2 Widget Ġ: ĠApp Widget Provider () Ġ{ ĊĊĠĠĠ Ġlateinit Ġvar Ġremote Views : ĠRemote Views ĊĠĠĠ Ġlateinit Ġvar ĠmContext : Context ĊĊĠĠĠ Ġoverride Ġfun ĠonUpdate ( ĊĠĠĠĠĠĠĠ Ġcontext : ĠContext , ĊĠĠĠĠĠĠĠ Ġapp Widget Manager : ĠApp Widget Manager , ĊĠĠĠĠĠĠĠ Ġapp Widget Ids : ĠInt Array ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġremote Views Ġ= ĠRemote Views ( context . packageName , R . layout . card _ res in _ type 2 _ widget ) ĊĠĠĠĠĠĠĠ ĠmContext Ġ= Ġcontext ĊĠĠĠĠĠĠĠ Ġremote Views . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset OnClick Pending Intent ( R . id . root , register Update Service ( context )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġapp Widget Ids . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġapp Widget Manager . update App Widget ( it , remote Views ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Receive ( context : ĠContext ?, Ġintent : ĠIntent ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Receive ( context , Ġintent ) ĊĠĠĠĠĠĠĠ ĠmContext Ġ= Ġcontext !! ĊĠĠĠĠĠĠĠ ĠCard Util . context Ġ= Ġcontext ĊĠĠĠĠĠĠĠ Ġwhen ( intent ?. action ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ç³»ç»Ł è°ĥçĶ¨ æĽ´æĸ° ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCard Util . APP WIDGET _ UPDATE , Card Util . CLICK _ ACTION ->{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Get Daily Note Service ( intent . action !! ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCard Util . UPDATE _ ACTION -> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġupdate UI () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCard Util . CLICK _ UPDATE _ ACTION ->{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" æłĳ èĦ Ĥ å°ı ç»Ħä»¶ æĽ´æĸ° ". c Show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġupdate UI () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġupdate UI (){ ĊĠĠĠĠĠĠĠ Ġif (! this :: remote Views . isInitialized ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġremote Views Ġ= ĠRemote Views ( mContext . packageName , R . layout . card _ res in _ type 2 _ widget ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġremote Views . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdaily Note Bean Ġ= ĠCard Util . getCache Daily Note Bean ( Card Util . main User . game Uid ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( daily Note Bean != null ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset TextView Text ( R . id . current _ res in ," ${ daily Note Bean . current _ res in }/${ daily Note Bean . max _ res in }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠApp Widget Manager . getInstance ( mContext ). update App Widget ( Component Name ( mContext , Card Res in Type 2 Widget :: class . java ), remote Views ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġstart Get Daily Note Service ( action : String ){ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( mContext , ĠGet Daily Note Service :: class . java ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġput Extra (" type ", Card Util . TYPE _ RES IN _ TYPE 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġput Extra (" action ", action ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( Build . VERSION . SDK _ INT Ġ>= ĠBuild . VERSION _ CODES . O ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠmContext . start Foreground Service ( intent ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠmContext . start Service ( intent ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġregister Update Service ( context : ĠContext ): ĠPending Intent Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( Card Util . CLICK _ ACTION ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomponent Ġ= ĠComponent Name ( context , Card Res in Type 2 Widget :: class . java ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn ĠPending Intent . get Broadcast ( context , 2 3 3 , intent , ĠPending Intent . FLAG _ UPDATE _ CURRENT ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Enabled ( context : ĠContext ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠEnter Ġrelevant Ġfunctionality Ġfor Ġwhen Ġthe Ġfirst Ġwidget Ġis Ġcreated ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Disabled ( context : ĠContext ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠEnter Ġrelevant Ġfunctionality Ġfor Ġwhen Ġthe Ġlast Ġwidget Ġis Ġdisabled ĊĠĠĠ Ġ} Ċ }