Приемник вещания работает непостоянно - не регистрируется подключение к мобильной сети
У меня есть BroadcastReceiver
, Когда мой телефон не подключен ни к Wi-Fi, ни к мобильным данным, а затем продолжает получать мобильное соединение, BroadcastReceiver
в большинстве случаев onReceive
и выведите "Connected" в logcat. Но иногда BroadcastReceiver
не буду звонить onReceive
когда мой телефон получает мобильную связь.
Вот код:
private val networkReciever = object : BroadcastReceiver() {
val debugtag = "VED-APP"
override fun onReceive(context: Context?, intent: Intent?) {
Log.d(debugtag, "Network state change...")
(context?.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager).activeNetworkInfo?.let {
if(it.isConnectedOrConnecting) {
Log.d(debugtag,"Connected")
//TODO - Ping server
return
}
}
Log.d(debugtag, "Disconnected")
//Assign internet connection as false.
}
}
внутри onStartInputView
(это приложение для клавиатуры):
val filter = IntentFilter()
filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION)
registerReceiver(networkReciever, filter)
внутри onFinishInputView
:
unregisterReceiver(networkReciever)