У меня есть класс, унаследованный от BroadcastReceiver()
class ConnectivityReceiver : BroadcastReceiver() {
override fun onReceive(context: Context?, intent: Intent?) {
Log.d("Connection", "onReceive")
if(ConnectionDetector(context!!).isConnectingToInternet) {
Log.d("Connection", "Connected To Internet")
}
else {
Log.d("Connection", "Not Connected To Internet")
}
}
}
И в MainActivity я пытаюсь зарегистрировать его
private val receiver = ConnectivityReceiver()
private fun registerreciver() {
ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.INTERNET),1)
ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.ACCESS_NETWORK_STATE),1)
val filter = IntentFilter()
filter.addAction("android.net.conn.CONNECTIVITY_CHANGE")
LocalBroadcastManager.getInstance(this).registerReceiver(receiver, filter)
}
override fun onDestroy() {
super.onDestroy()
LocalBroadcastManager.getInstance(this).unregisterReceiver(receiver)
}
Но он не вызывается, когда я выключаю/включаю Wi-Fi или мобильные данные. Какие-либо предложения?