ЦЕЛЬ: получить информацию (уровень сигнала) о конкретном типе подключения (которое я на самом деле использую).
ПРОБЛЕМА: Яне уверены, что точно понимаете, что представляет собой CellInfo
и как извлечь информацию из getAllCellInfo
ВОПРОСЫ:
1) С сайта разработчика Android
CellInfo: Неизменяемая информация о ячейке с определенного момента времени.
Что это значит?
2) Я хочу понять, если яЯ использую wcdma, umts, gsm или lte.Я нашел здесь фрагмент кода, используя getAllCellInfo , ниже моей адаптированной версии, чтобы получить уровень сигнала
for (final CellInfo info : telephonyManager.getAllCellInfo()) {
if (info instanceof CellInfoGsm) {
final CellSignalStrengthGsm gsm = ((CellInfoGsm) info).getCellSignalStrength();
if(gsm.getLevel() >= localMaxSignalStrength)
localMaxSignalStrength = gsm.getLevel();
Toast.makeText(getApplicationContext(), "gsm rssi" + localMaxSignalStrength, Toast.LENGTH_LONG).show();
} else if (info instanceof CellInfoWcdma) {
final CellSignalStrengthWcdma cdma = ((CellInfoWcdma) info).getCellSignalStrength();
if(cdma.getLevel() >= localMaxSignalStrength)
localMaxSignalStrength = cdma.getLevel();
Toast.makeText(getApplicationContext(), "wcdma rssi" + localMaxSignalStrength, Toast.LENGTH_LONG).show();
} else if (info instanceof CellInfoLte) {
final CellSignalStrengthLte lte = ((CellInfoLte) info).getCellSignalStrength();
if(lte.getLevel() >= localMaxSignalStrength)
localMaxSignalStrength = lte.getLevel();
Toast.makeText(getApplicationContext(), "lte rssi" + localMaxSignalStrength, Toast.LENGTH_LONG).show();
Теперь из того, что я прочитал на сайте Android-разработчика
getAllCellInfo () : возвращает всю наблюдаемую информацию о сотах со всех радиостанций на устройстве, включая первичные и соседние соты.Вызов этого метода не инициирует вызов onCellInfoChanged () и не изменяет частоту, с которой вызывается onCellInfoChanged ().
Список может включать один или несколько CellInfoGsm, CellInfoCdma, CellInfoLte,и объекты CellInfoWcdma, в любой комбинации.
, поэтому это означает, что getAllCellInfo()
не возвращает только один вид информации о подключении, но они могут быть смешанными.Я хочу понять, использует ли мой телефон все возвращенные или только один из них (и в последнем случае, как найти тот, который я использую).