add wifiReceiver
This commit is contained in:
43
app/src/main/java/com/mogo/cloud/WifiBroadCastReceiver.java
Normal file
43
app/src/main/java/com/mogo/cloud/WifiBroadCastReceiver.java
Normal file
@@ -0,0 +1,43 @@
|
||||
package com.mogo.cloud;
|
||||
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.net.wifi.WifiInfo;
|
||||
import android.net.wifi.WifiManager;
|
||||
|
||||
import com.mogo.cloud.utils.logger.Logger;
|
||||
|
||||
public class WifiBroadCastReceiver extends BroadcastReceiver {
|
||||
|
||||
private static final String TAG = "WifiBroadCastReceiver";
|
||||
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
int wifiState = intent.getIntExtra("wifi_state", 0);
|
||||
WifiManager wifiManager = ((WifiManager) context.getApplicationContext().getSystemService(Context.WIFI_SERVICE));
|
||||
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
|
||||
int linkSpeed = wifiInfo.getLinkSpeed();
|
||||
Logger.d(TAG, "wifi linkSpeed : " + linkSpeed); //wifi连接速度
|
||||
//0到-50表示信号最好,-50到-70表示信号偏差,小于-70表示最差,有可能连接不上或者掉线
|
||||
int level = Math.abs(wifiInfo.getRssi());
|
||||
Logger.d(TAG, "wifi level : " + level); //wifi信号强度
|
||||
switch (wifiState) {
|
||||
case WifiManager.WIFI_STATE_DISABLING:
|
||||
Logger.d(TAG, "WIFI State : DISABLING");
|
||||
break;
|
||||
case WifiManager.WIFI_STATE_DISABLED:
|
||||
Logger.d(TAG, "WIFI State : DISABLED");
|
||||
break;
|
||||
case WifiManager.WIFI_STATE_ENABLING:
|
||||
Logger.d(TAG, "WIFI State : ENABLING");
|
||||
break;
|
||||
case WifiManager.WIFI_STATE_ENABLED:
|
||||
Logger.d(TAG, "WIFI State : ENABLED");
|
||||
break;
|
||||
case WifiManager.WIFI_STATE_UNKNOWN:
|
||||
Logger.d(TAG, "WIFI State : UNKNOWN");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user