package Ġcom . pad i . warehouse . activities Ċ Ċ import Ġandroid . content . pm . PackageManager Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . KeyEvent Ċ import Ġandroid . view . View Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġcom . jo urney apps . barcode scanner . Capture Manager Ċ import Ġcom . pad i . warehouse . databinding . Activity Barcode Scan Binding Ċ Ċ class ĠBar code Scan Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbinding : ĠActivity Barcode Scan Binding ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġcapture : ĠCapture Manager ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġbinding Ġ= ĠActivity Barcode Scan Binding . inflate ( layout Inflater ) ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġbinding . root ĊĠĠĠĠĠĠĠ ĠsetContentView ( view ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġif Ġthe Ġdevice Ġdoes Ġnot Ġhave Ġflash light Ġin Ġits Ġcamera , ĊĠĠĠĠĠĠĠ Ġ// Ġthen Ġremove Ġthe Ġswitch Ġflash light Ġbutton ... ĊĠĠĠĠĠĠĠ Ġif Ġ(! has Flash ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . switch Flash light . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . switch Flash light . setOn Checked ChangeListener Ġ{ Ġ_, Ġis Checked Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( isChecked ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . zx ing Barcode Scanner . set Torch On () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . zx ing Barcode Scanner . set Torch Off () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// start Ġcapture ĊĠĠĠĠĠĠĠ Ġcapture Ġ= ĠCapture Manager ( this , Ġbinding . zx ing Barcode Scanner ) ĊĠĠĠĠĠĠĠ Ġcapture . initialize From Intent ( intent , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠ Ġcapture . decode () ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCheck Ġif Ġthe Ġdevice 's Ġcamera Ġhas Ġa ĠFlash light . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ return Ġtrue Ġif Ġthere Ġis ĠFlash light , Ġotherwise Ġfalse . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun Ġhas Flash (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġapplication Context . package Manager ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has System Feature ( PackageManager . FEATURE _ CAMERA _ FLASH ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġcapture . on Resume () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Pause () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Pause () ĊĠĠĠĠĠĠĠ Ġcapture . on Pause () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy () ĊĠĠĠĠĠĠĠ Ġcapture . on Destroy () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Save InstanceState ( out State : ĠBundle ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Save InstanceState ( out State ) ĊĠĠĠĠĠĠĠ Ġcapture . on Save InstanceState ( out State ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon KeyDown ( keyCode : ĠInt , Ġevent : ĠKeyEvent ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġbinding . zx ing Barcode Scanner . on KeyDown ( keyCode , Ġevent ) Ġ|| Ġsuper . on KeyDown ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠkeyCode , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevent ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ Ċ }