package Ġcom . google . firebase . ml . md . views Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . n fc . N def Message Ċ import Ġandroid . n fc . N fc Adapter Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . os . V ibr ator Ċ import Ġandroid . util . Log Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġcom . bump tech . glide . G lide Ċ import Ġcom . google . firebase . firestore . Firebase Fire store Ċ import Ġcom . google . firebase . ml . md . R Ċ import Ġcom . google . firebase . ml . md . models . Data Ċ import Ġkotlinx . android . synt hetic . main . activity _ home .* Ċ Ċ class ĠHome Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġlateinit Ġvar Ġgrid Adapter : ĠGrid Adapter ĊĠĠĠ Ġlateinit Ġvar Ġdata : ĠData ĊĠĠĠ Ġvar Ġimg No : ĠInt Ġ= Ġ 1 ĊĊĠĠĠ Ġvar Ġdb Ġ= ĠFirebase Fire store . getInstance () ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ home ) ĊĊĠĠĠĠĠĠĠ Ġdb . collection (" data "). document (" imag 2 "). get () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add On Success Listener Ġ{ Ġdocument Snapshot Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" DATA ", Ġdocument Snapshot . data . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata Ġ= Ġdocument Snapshot . toObject ( Data :: class . java ) !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdo On Next Get Db () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. add On Failure Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdo On Next Get Db () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdatum Ġ= Ġdata . images ?. get ( img No ) !! ĊĠĠĠĠĠĠĠ Ġgrid Adapter Ġ= ĠGrid Adapter ( datum . width , Ġdatum . height ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( this , Ġ" Click ", ĠToast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvi br ator Ġ= Ġget System Service ( Context . V IB R ATOR _ SERVICE ) Ġas ĠV ibr ator ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvi br ator . vi br ate ( 5 0 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġrv _ touch _ grid . adapter Ġ= Ġgrid Adapter ĊĠĠĠĠĠĠĠ ĠG lide . with ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( datum . img Url ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. center Crop () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( iv _ img ) ĊĠĠĠĠĠĠĠ Ġpb _ loading . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġiv _ img . alpha Ġ= Ġ 1 f ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon New Intent ( intent : ĠIntent ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on New Intent ( intent ) ĊĠĠĠĠĠĠĠ Ġif Ġ( intent . action Ġ== ĠN fc Adapter . ACTION _ N DEF _ DIS COVER ED ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . get Parcelable Array Extra ( N fc Adapter . EXTRA _ N DEF _ MESSAGES )?. also Ġ{ Ġraw Messages Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmessages : ĠList < N def Message > Ġ= Ġraw Messages . map Ġ{ Ġit Ġas ĠN def Message Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdb . collection (" log "). document (). set ( messages ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }