【发布时间】:2023-03-31 13:40:01
【问题描述】:
在 Android 中,我可以使用以下代码找到信号强度,
protected int getSignalStrength(SignalStrength signal) {
String ssignal = signal.toString();
String[] parts = ssignal.split(" ");
int dB = -120; // No Signal Measured when returning -120 dB
// If LTE
if (telephonyManager.getNetworkType() == TelephonyManager.NETWORK_TYPE_LTE){
int ltesignal = Integer.parseInt(parts[9]);
// check to see if it get's the right signal in dB, a signal below -2
if(ltesignal < -2) {
dB = ltesignal;
}
}
// Else 3G
else {
if (signal.getGsmSignalStrength() != 99) {
int strengthInteger = -113 + 2 * signal.getGsmSignalStrength();
dB = strengthInteger;
}
}
return dB;
}
如何以编程方式使用信号强度计算移动互联网的速度(上传速度/下载速度)?这是我的问题?
【问题讨论】:
-
信号强度与下载/上传速度不符
-
如何找到数据上传和下载的速度...你能告诉我吗
-
speedtest.net的源代码,这可能对你有帮助:gregbugaj.com/?attachment_id=70
-
上传速度和下载速度有区别吗,因为上面的链接说的是下载速度。所以你能正确地给我打电话吗.. 谢谢你的建议
-
你无法计算速度,你必须测量它。以及如何测量上传速度?通过在某处上传内容并测量需要多长时间。
标签: android telephonymanager connectivity signal-strength