package Ġcom . no organization . google cert ification kotlin . extra _ code _ lab _ injection . step 3 . presentation Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroidx . databinding . Data Binding Util Ċ import Ġandroidx . lifecycle . Observer Ċ import Ġcom . no organization . google cert ification kotlin . Google Cert ification Kotlin Application Ċ import Ġcom . no organization . google cert ification kotlin . R Ċ import Ġcom . no organization . google cert ification kotlin . databinding . Activity Login D agger Binding Ċ import Ġcom . no organization . google cert ification kotlin . extra _ code _ lab _ injection . step 1 . Car Inject Native Activity Ċ import Ġcom . no organization . google cert ification kotlin . extra _ code _ lab _ injection . step 4 _ espress o _ test . Esp ress o Activity Ċ import Ġkotlinx . android . synt hetic . main . activity _ login _ d agger .* Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠLogin D agger Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbinding : ĠActivity Login D agger Binding ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġlogin ViewModel : ĠLogin ViewModel ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġbinding Ġ= ĠData Binding Util . set ContentView ( this , ĠR . layout . activity _ login _ d agger ) ĊĊĠĠĠĠĠĠĠ Ġ( application Ġas ĠGoogle Cert ification Kotlin Application ). app Component . login Component (). create () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. inject ( this ) ĊĊĠĠĠĠĠĠĠ Ġbinding . view model Ġ= Ġlogin ViewModel ĊĊĠĠĠĠĠĠĠ Ġlogin ViewModel . login State . observe ( this , ĠObserver < Login ViewState > Ġ{ Ġstate Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( state ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠLogin ViewState . Login Success Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , ĠCar Inject Native Activity :: class . java )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠLogin ViewState . Login Error Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , ĠE sp ress o Activity :: class . java )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} Ċ } Ċ