预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

AndroidWIFI状态监控 第一类:有无wifi源及各个状态间转变 可监听WIFI_STATE_CHANGED_ACTION。(如下图所示,双击图片可放大) 有五种情况:1-1disabled1-2disabling1-3enable1-4enabling1-5unknown可通过不同的Extra值,见下图(双击可放大)获得状态常量:代码如下: 1.if(WifiManager.WIFI_STATE_CHANGED_ACTION.equals(action)){//在此监听wifi有无2.intwifiState=intent.getIntExtra(WifiManager.EXTRA_WIFI_STATE,0);3.4.switch(wifiState){5.caseWifiManager.WIFI_STATE_DISABLED:6.updateWifiStatus(R.drawable.wifi_disable);7.Toast.makeText(mContext,R.string.wifi_disable,8.Toast.LENGTH_LONG).show();9.break;10.caseWifiManager.WIFI_STATE_DISABLING:11.break;12.caseWifiManager.WIFI_STATE_ENABLED:13.updateWifiStatus(R.drawable.wifi_enable);14.Toast.makeText(mContext,R.string.wifi_enable,15.Toast.LENGTH_LONG).show();16.break;17.caseWifiManager.WIFI_STATE_ENABLING:18.break;19.caseWifiManager.WIFI_STATE_UNKNOWN:20.break;21.}22.}也可通过以下代码实现:1.//另外一种方式2.mWifiMng=(WifiManager)mContext3..getSystemService(mContext.WIFI_SERVICE);4.5.switch(mWifiMng.getWifiState()){6.caseWifiManager.WIFI_STATE_DISABLED:7.updateWifiStatus(R.drawable.wifi_disable);8.Toast.makeText(mContext,R.string.wifi_disable,9.Toast.LENGTH_LONG).show();10.break;11.caseWifiManager.WIFI_STATE_DISABLING:12.break;13.caseWifiManager.WIFI_STATE_ENABLED:14.updateWifiStatus(R.drawable.wifi_enable);15.Toast.makeText(mContext,R.string.wifi_enable,16.Toast.LENGTH_LONG).show();17.break;18.caseWifiManager.WIFI_STATE_ENABLING:19.break;20.caseWifiManager.WIFI_STATE_UNKNOWN:21.break;22.}第二类:wifi是否连接正常可监听:NETWORK_STATE_CHANGED_ACTION(如下图所示,双击图片可放大) 有两种状况:2-1连接2-1未连接在OnReceiver方法中,通过不同Extra值,获得连接状况,如下图,双击图片放大:代码如下: 1.if(WifiManager.NETWORK_STATE_CHANGED_ACTION.equals(action)){2.ParcelableparcelableExtra=intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);3.if(null!=parcelableExtra){4.NetworkInfonetworkInfo=(NetworkInfo)parcelableExtra;5.booleanisConnected=networkInfo.isAvailable();6.updateNetworkStatus();7.}8.}