package Ġcom . unt one . t ict imer čĊč Ċ import Ġandroid . app . Pending Intent č Ċ import Ġandroid . app widget . App Widget Manager č Ċ import Ġandroid . app widget . App Widget Provider č Ċ import Ġandroid . content . Context č Ċ import Ġandroid . content . Intent č Ċ import Ġandroid . widget . Remote Views čĊč Ċ /** čĊ Ġ* ĠImplementation Ġof ĠApp ĠWidget Ġfunctionality . čĊ Ġ*/ č Ċ class ĠRem inder Widget Ġ: ĠApp Widget Provider () Ġ{ čĊĠĠĠ Ġoverride Ġfun ĠonUpdate ( čĊĠĠĠĠĠĠĠ Ġcontext : ĠContext , čĊĠĠĠĠĠĠĠ Ġapp Widget Manager : ĠApp Widget Manager , čĊĠĠĠĠĠĠĠ Ġapp Widget Ids : ĠInt Array čĊĠĠĠ Ġ) Ġ{ čĊĠĠĠĠĠĠĠ Ġ// ĠThere Ġmay Ġbe Ġmultiple Ġwidgets Ġactive , Ġso Ġupdate Ġall Ġof Ġthem čĊĠĠĠĠĠĠĠ Ġfor Ġ( app Widget Id Ġin Ġapp Widget Ids ) Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠ Ġupdate App Widget ( context , Ġapp Widget Manager , Ġapp Widget Id ) čĊĠĠĠĠĠĠĠ Ġ} čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ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 čĊĠĠĠ Ġ} č Ċ } čĊč Ċ internal Ġfun Ġupdate App Widget ( čĊĠĠĠ Ġcontext : ĠContext , čĊĠĠĠ Ġapp Widget Manager : ĠApp Widget Manager , čĊĠĠĠ Ġapp Widget Id : ĠInt č Ċ ) Ġ{ čĊĠĠĠ Ġval Ġopen Intent Ġ= ĠIntent ( context , ĠMainActivity :: class . java ) čĊĠĠĠ Ġval Ġpending Intent Ġ= ĠPending Intent . getActivity ( context , Ġ 0 , Ġopen Intent , Ġ 0 ) čĊĠĠĠ Ġ// ĠConstruct Ġthe ĠRemote Views Ġobject čĊĠĠĠ Ġval Ġviews Ġ= ĠRemote Views ( context . packageName , ĠR . layout . reminder _ widget ). apply { setOn Click Pending Intent ( R . id . widget Button , Ġpending Intent )} čĊčĊĠĠĠ Ġ// ĠIn struct Ġthe Ġwidget Ġmanager Ġto Ġupdate Ġthe Ġwidget čĊĠĠĠ Ġapp Widget Manager . update App Widget ( app Widget Id , Ġviews ) č Ċ }