I want to make an app that displays the current rssi, with live updates. So far i've go this:
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
_binding = FragmentFirstBinding.inflate(inflater, container, false)
LocalBroadcastManager.getInstance(requireContext()).registerReceiver(myRssiChangeReceiver, IntentFilter(WifiManager.RSSI_CHANGED_ACTION))
return binding.root
}
val myRssiChangeReceiver = object : BroadcastReceiver() {
override fun onReceive(p0: Context?, p1: Intent?) {
val wifiMan : WifiManager = activity?.getSystemService(Context.WIFI_SERVICE) as WifiManager
wifiMan.startScan()
val newRSSI : Int = wifiMan.connectionInfo.rssi
binding.wifiData.text = newRSSI.toString()
}
}
But it doesn't display anything.