package Ġcom . example . android . chat app Ċ Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . View Ċ import Ġcom . firebase . ui . database . Firebase ListAdapter Ċ import Ġcom . firebase . ui . database . Firebase List Options Ċ import Ġcom . google . firebase . auth . Firebase Auth Ċ import Ġcom . google . firebase . database . Firebase Database Ċ import Ġkotlinx . android . synt hetic . main . activity _ chat .* Ċ import Ġandroid . widget . TextView Ġas ĠTextView 1 Ċ Ċ @ Suppress (" UN RE ACH ABLE _ CODE ") Ċ class ĠChat Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ chat ) ĊĊĠĠĠĠĠĠĠ Ġbutton 2 . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmsg Ġ= Ġedit Text Text Person Name . text . toString () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġemail Ġ= ĠFirebase Auth . getInstance (). currentUser !!. email ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠFirebase Database . getInstance (). reference . child ( messages . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. push () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setValue ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMessage ( email !! , msg ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġquery Ġ= ĠFirebase Database . getInstance (). reference . child (" messages ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġoptions Ġ= ĠFirebase List Options . Builder < Message >() ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setLayout ( android . R . layout . simple _ list _ item _ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Query ( query , ĠMessage :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġobject Ġ Ġ: ĠFirebase ListAdapter < Message >( options ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġpopulate View ( v : ĠView , Ġmodel : ĠMessage , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTODO (" Not Ġyet Ġimplemented ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( v Ġas ĠTextView 1 ). text Ġ= Ġmodel . email Ġ+ Ġ"\ n " Ġ+ Ġmodel . msg ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter . start Listening () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠMessage Ġ( var Ġemail : ĠString , Ġvar Ġmsg : ĠString Ġ) Ġ{ ĊĊĠĠĠ Ġconstructor (): Ġthis ("", Ġ"") ĊĊ Ċ }