主机Access Point上的Android BroadcastReceiver

时间:2014-05-29 11:54:20

标签: android broadcastreceiver android-wifi wifimanager

我创建了一个使用以下代码创建接入点的应用:

            WifiConfiguration netConfig = new WifiConfiguration();
            netConfig.SSID = mySSID
            netConfig.preSharedKey = myPass;
            configWifiConfiguration(netConfig);
            return (boolean) method.invoke(wifiManager, netConfig, true); // true

它成功创建了接入点,客户端现在可以连接到它。 在客户端,我创建了一个广播接收器,以了解何时成功建立连接。 客户端代码是:

@Override
    public void onReceive(Context context, Intent intent) {
        // TODO Auto-generated method stub
        String action = intent.getAction();

        if ( WifiManager.NETWORK_STATE_CHANGED_ACTION.equals(action)) {

        } else if (WifiManager.WIFI_STATE_CHANGED_ACTION.equals(action)) {

        }
    }

使用此接收器,我可以知道连接何时成功。我的问题是我不能对主机做同样的事情。我需要知道设备何时连接,所以我可以开始信息传输。 我想在主机上创建一个接收器,以了解设备何时连接到它。 我怎样才能做到这一点? 我尝试了WifiP2pManager和ConnectionManager类的操作,但没有任何作用。 有没有办法知道设备何时连接到主机?

1 个答案:

答案 0 :(得分:0)

@Override
public void onReceive(Context context, Intent intent)
{
    String action = intent.getAction();

    if ( "android.net.wifi.WIFI_AP_STATE_CHANGED".equals(action)) 
    {

    }
}