Я пытаюсь определить, подключен ли WiFi или нет, прослушивая «SUPPLICANT_CONNECTION_CHANGE_ACTION», как показано ниже в коде. Но проблема в том, что , когда я запускаю приложение, я не получаю никаких уведомлений от широкого получателя Cast, на который я зарегистрирован!BroadCast Receiver никогда не называется
Почему это происходит и как его решить?
код:
IntentFilter intentFilter2 = new IntentFilter(WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ConnectivityModule();
}
protected void ConnectivityModule() {
// TODO Auto-generated method stub
Log.d(TAG, "@interNetConnectivityModule: called");
registerReceiver(SupplicantReceiver, intentFilter2);
}
BroadcastReceiver SupplicantReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
final String action = intent.getAction();
if (action.equals(WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION)) {
SupplicantState supplicantState = (SupplicantState)intent.getParcelableExtra(WifiManager.EXTRA_NEW_STATE);
if (supplicantState == (SupplicantState.COMPLETED)) {
Log.d(TAG, "@SupplicantReceiver: connected");
}
if (supplicantState == (SupplicantState.DISCONNECTED)) {
Log.d(TAG, "@SupplicantReceiver: not connected");
}
}
}
};
все разрешения установлены в манифесте? – Opiatefuchs
да все установленные разрешения, а во время выполнения я не получаю никаких ошибок в logcat – rmaik
Также вы зарегистрировали свой приемник в своем манифесте? –