|
项目用到,标记记录一下方便下一次使用。
先获取系统服务
(ConnectivityManager) mContext
.getSystemService(Context.CONNECTIVITY_SERVICE);
注册广播
IntentFilter ifilter = new IntentFilter(
WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);
ifilter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
ifilter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
mContext.registerReceiver(mWifiStateReceiver, ifilter);
接收广播
public class WifiStateReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
try {
AspLog.v(TAG,
"WifiStateReceiver onReceive:" + intent.getAction());
if (intent.getAction().equals(
WifiManager.WIFI_STATE_CHANGED_ACTION)) {
if (dialog_loading != null) {
AspLog.v(TAG,
"WIFI_STATE_CHANGED_ACTION dialog_loading="
+ dialog_loading + ",showing="
+ dialog_loading.isShowing()
+ ",wifistate=" + getWIFIstate());
} else {
AspLog.v(TAG,
"WIFI_STATE_CHANGED_ACTION dialog_loading="
+ dialog_loading + ",showing=null"
+ ",wifistate=" + getWIFIstate());
}
if (dialog_loading != null && dialog_loading.isShowing()
&& getWIFIstate() == State.CONNECTED) {
dialog_loading.dismiss();
finishAsOk(intent);
}
}
if (intent.getAction().equals(
WifiManager.SCAN_RESULTS_AVAILABLE_ACTION)) {// 判断wifi
// enable的事件
if (mWifiList == null || mWifiList.size() == 0) {
mWifiList = mWifiManager.getScanResults();
listScanResults();
}
handlerWIFIMessage(STATE_UPDATE_LIST);
}
if (intent.getAction().equals(
WifiManager.NETWORK_STATE_CHANGED_ACTION)) {// 判断wifi
// enable的事件
mWifiList = mWifiManager.getScanResults();
listScanResults();
AspLog.v(TAG, "wifiList size:" + mWifiList.size());
handlerWIFIMessage(STATE_UPDATE_LIST);
if (dialog_loading != null) {
AspLog.v(TAG,
"NETWORK_STATE_CHANGED_ACTION dialog_loading="
+ dialog_loading + ",showing="
+ dialog_loading.isShowing()
+ ",wifistate=" + getWIFIstate());
} else {
AspLog.v(TAG,
"NETWORK_STATE_CHANGED_ACTION dialog_loading="
+ dialog_loading + ",showing= null"
+ ",wifistate=" + getWIFIstate());
}
if (dialog_loading != null && dialog_loading.isShowing()
&& getWIFIstate() == State.CONNECTED) {
dialog_loading.dismiss();
finishAsOk(intent);
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
更多的移动互联网的发展趋势、app开发、移动互联网应用相关的资料请到互联网的一点事:www.yidin.net 留言
android QQ群:222392467
资料:
http://www.yidin.net/?p=8280
http://www.yidin.net/?p=9725 |
|