2017-04-18 20 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); 
関連する問題