怎么判断手机wifi连接一个AP已经完成

如何判断手机wifi连接一个AP已经完成
做一个应用需要控制手机连接某一个AP,用了:
boolean connected = mWifiAdmin.Connect(ssid, passwd, 3);
其中Connect的实现如下:
	public boolean Connect(String SSID, String Password, int Type) {
WifiConfiguration wifiConfig = CreateWifiInfo(SSID, Password, Type);

if (wifiConfig == null) {
Log.d(TAG, "wifiConfig==null");
return false;
}

WifiConfiguration tempConfig = this.IsExsits(SSID);

if (tempConfig != null) {
mWifiManager.removeNetwork(tempConfig.networkId);
}
int netID = mWifiManager.addNetwork(wifiConfig);

boolean bRet = mWifiManager.enableNetwork(netID, true);
return bRet;
}


每次连接的时候Connect立刻就返回了,这个时候需要根据connected的值在界面显示对于的状态,可是实际上手机该ssid之间的连接还没有完成,因为正如我们手机上面的wifi设置,连接一个wifi的时候都需要几秒的时间才能连接上。请问如何判断手机与这个ssid真正连接完成了呢?

------解决方案--------------------
收系统的intent。

 183         mFilter = new IntentFilter();
 184         mFilter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
 185         mFilter.addAction(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);
 186         mFilter.addAction(WifiManager.NETWORK_IDS_CHANGED_ACTION);
 187         mFilter.addAction(WifiManager.SUPPLICANT_STATE_CHANGED_ACTION);
 188         mFilter.addAction(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION);
 189         mFilter.addAction(WifiManager.LINK_CONFIGURATION_CHANGED_ACTION);
 190         mFilter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
 191         mFilter.addAction(WifiManager.RSSI_CHANGED_ACTION);