Java 连接到移动网络时,如何获得连接速度?
我正在尝试获取移动和WiFi连接的连接速度。我有无线网络。现在我需要帮助找出移动连接 这是我到目前为止所拥有的Java 连接到移动网络时,如何获得连接速度?,java,android,Java,Android,我正在尝试获取移动和WiFi连接的连接速度。我有无线网络。现在我需要帮助找出移动连接 这是我到目前为止所拥有的 public void internetConnectionSpeed(Context context) { Boolean isConnected = false; getConnectionStatus = "Not Connected!"; ConnectivityManager cm = (ConnectivityManager) context.ge
public void internetConnectionSpeed(Context context) {
Boolean isConnected = false;
getConnectionStatus = "Not Connected!";
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(context.CONNECTIVITY_SERVICE);
if (cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.CONNECTED || (cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.CONNECTED)) {
isConnected = true;
getConnectionStatus = "Connected!";
if (isConnected.equals(true)) {
WifiManager wifiManager = (WifiManager) context.getSystemService(context.WIFI_SERVICE);
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
int speedMbps = wifiInfo.getLinkSpeed();
getConnectionStatus = Integer.toString(speedMbps) + " Mbps";
//Now I need equivalent code for Mobile Network...
}
}else {
isConnected = false;
getConnectionStatus = "Not Connected!";
}
}
有什么想法吗?谢谢
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
boolean connected = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.CONNECTED;
if(connected){//todo}
您无法直接获得wifimanager提供的网络速度。你需要
在地址中ping并计算响应时间。遵循以下步骤:
您无法直接获得wifimanager提供的网络速度。你需要
在地址中ping并计算响应时间。遵循以下步骤: