package Ġcom . example . tank _ controller Ċ Ċ import Ġandroid . Manifest Ċ import Ġandroid . app . Activity Ċ import Ġandroid . bluetooth . Bluetooth Adapter Ċ import Ġandroid . bluetooth . Bluetooth Device Ċ import Ġandroid . bluetooth . Bluetooth Socket Ċ import Ġandroid . content . Intent Ċ import Ġandroid . content . pm . PackageManager Ċ import Ġandroid . os . Build Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . system . Os . socket Ċ import Ġandroid . util . Log Ċ import Ġandroid . widget . Button Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroidx . core . app . Activity Compat Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġcom . example . tank _ controller . settings . Settings Activity Ċ import Ġorg . jetbrains . ank o . toast Ċ Ċ import Ġjava . io . IOException Ċ import Ġjava . util .* ĊĊ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġval Ġbluetooth Service Ġ= ĠBluetooth Service () ĊĊĠĠĠ Ġlateinit Ġvar Ġconnect Button Ġ: ĠButton ĊĠĠĠ Ġlateinit Ġvar Ġdriver Button Ġ: ĠButton ĊĠĠĠ Ġlateinit Ġvar Ġsh ooter Button Ġ: ĠButton ĊĠĠĠ Ġlateinit Ġvar Ġsettings Button Ġ: ĠButton ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ main ) ĊĠĠĠĠĠĠĠ ĠInit Buttons () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonStart () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onStart () ĊĠĠĠĠĠĠĠ ĠUpdate Buttons () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠInit Buttons () Ġ{ ĊĠĠĠĠĠĠĠ Ġconnect Button Ġ= ĠfindViewById < Button >( R . id . connect View Button ) ĊĠĠĠĠĠĠĠ Ġconnect Button . setOnClickListener { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( this , ĠConnect Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġdriver Button Ġ= ĠfindViewById < Button >( R . id . driver View Button ) ĊĠĠĠĠĠĠĠ Ġdriver Button . setOnClickListener { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( this , ĠDriver Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġsh ooter Button Ġ= ĠfindViewById < Button >( R . id . sh ooter View Button ) ĊĠĠĠĠĠĠĠ Ġsh ooter Button . setOnClickListener { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( this , ĠSh ooter Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġsettings Button Ġ= ĠfindViewById < Button >( R . id . settings View Button ) ĊĠĠĠĠĠĠĠ Ġsettings Button . setOnClickListener { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( this , ĠSettings Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠUpdate Buttons () Ġ{ ĊĠĠĠĠĠĠĠ Ġif ( bluetooth Service . isConnected With Device ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsettings Button . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsh ooter Button . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdriver Button . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsettings Button . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsh ooter Button . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdriver Button . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }