Xamarin: разница между ConnectivityManager.ConnectivityAction и BluetoothAdapter.ACTION_STATE_CHANGED

Я хотел знать, в чем разница между ConnectivityAction и Action_State_Change.

На данный момент у меня есть BroadcastReceiver, который слушает ConnectivityAction, чтобы проверить состояние включения/отключения Wi-Fi. Кроме того, я использовал ConnectivityAction для прослушивания состояния включения/отключения Bluetooth.

В Action_State_Change я могу сделать то же самое, чтобы определить включение/отключение Bluetooth, проверив намерение State_On.

У меня есть разница между ConnectivityAction и Action_State_Change: когда я регистрирую ConnectivityAction в onStart и отменяю его регистрацию в onStop в моем действии, тогда, когда пользователь выбирает включение/отключение на экране настроек, получатель все равно получает сообщение. С другой стороны, если я использовал Action_State_Change, если пользователь выберет включение/выключение на экране настроек, мой широковещательный приемник с Action_State_Change не получит сообщение.

В чем разница между двумя фильтрами действий.


person LittleFunny    schedule 20.04.2016    source источник


Ответы (1)


CONNECTIVITY_ACTION — изменение сети подключение произошло.

ACTION_STATE_CHANGE — действие широковещательной рассылки: состояние локального Адаптер Bluetooth заменен.

Первое относится к любому изменению сети, второе конкретно к Bluetooth-адаптеру

person Jason    schedule 20.04.2016
comment
Если бы я использовал первый для проверки, у Bluetooth не было бы никаких проблем. Потому что на данный момент все в порядке при использовании первого варианта. - person LittleFunny; 20.04.2016