当网络类型是UMTS时,有谁知道如何获取CellSignalStrength,即getDbm()?当网络类型是LTE或GSM时,我们可以使用像http://developer.android.com/reference/android/telephony/CellSignalStrengthLte.html这样的类。
但是我不知道如何获得UMTS SignalStrength,安卓有没有为此提供任何类?请帮帮我
发布于 2013-07-25 13:26:54
我的问题的答案是你应该使用CDMA http://developer.android.com/reference/android/telephony/CellSignalStrengthCdma.html。
因为UMTS是CDMA的一种,所以我认为它应该可以工作。
代码我正在使用的GSM,LTE,UMTS是这和它的工作对我很好。
public void onSignalStrengthsChanged(SignalStrength signalStrength) {
super.onSignalStrengthsChanged(signalStrength);
CellSignalStrengthLte1 a1=new CellSignalStrengthLte1();
a1.initialize(signalStrength, 1);
MyService.signal=a1.getDbm();
if(MyService.signal>0){
CellSignalStrengthGsm1 a3=new CellSignalStrengthGsm1();
a3.initialize(signalStrength.getGsmSignalStrength(), 1);
MyService.signal=a3.getDbm();
}
if(MyService.signal>0)
{
CellSignalStrengthCdma1 a2=new CellSignalStrengthCdma1();
a2.initialize(signalStrength.getCdmaDbm(),signalStrength.getCdmaEcio(),signalStrength.getEvdoDbm(), signalStrength.getEvdoEcio(),signalStrength.getEvdoSnr());
MyService.signal=a2.getDbm();
}
}https://stackoverflow.com/questions/17671077
复制相似问题