2017-04-18 8 views
0

프로그래밍 방식으로 WiFi 네트워크에 연결하는 간단한 활동을 작성 중입니다. 여기 내 코드는 다음과 같습니다.Android : BroadcastReceiver onReceive 콜백이 트리거되지 않음

public class WiFiSettings extends AppCompatActivity 
{ 


@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_wi_fi_settings); 

    WifiManager oWifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE); 
    configure(oWifiManager, "my-wifi", "1234", "WPA");//wrote this method myself. I know that it works. The phone is able to join the network. 

    IntentFilter intentFilter = new IntentFilter(); 
    intentFilter.addAction(WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION); 
    Poop bigone = new Poop(); 
    registerReceiver(bigone, intentFilter); 
} 

private class Poop extends BroadcastReceiver 
{ 
    @Override 
    public void onReceive(Context context, Intent intent) { 
     Log.i("it worked", "!"); 
    } 
} 


} 

왜 onReceive 메소드가 콜백되지 않습니까? configure 메소드가 작동하고 주어진 네트워크에 성공적으로 참여할 수 있지만 네트워크에 가입하거나 가입하지 못하면 onReceive 메소드가 호출되지 않습니다.

답변

0

는 ... 의도 필터를 변경하여 문제를 해결

intentFilter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);