У меня есть приведенный выше код, и перед вставкой try-catch у меня была эта ошибка в logcat
java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference
Проблема заключалась в цикле for для списка CellInfoList. Где именно проблема.
List<CellInfo> cellInfoList = tm.getAllCellInfo();
try {
for (final CellInfo info : cellInfoList) {
if (info instanceof CellInfoLte) {
final CellSignalStrengthLte lte = ((CellInfoLte) info).getCellSignalStrength();
final CellIdentityLte identityLte = ((CellInfoLte) info).getCellIdentity();
test1 = lte.getDbm();
//lte.getTimingAdvance();
test2 = identityLte.getMcc();
//identityLte.getMnc();
test3 = identityLte.getCi();
}
}
} catch (Exception e) {
Log.e(TAG, "Unable to obtain cell signal information", e);
}
Спасибо
@SantanuSur тм это TelephonyManager tm = (TelephonyManager) getActivity().getSystemService(Context.TELEPHONY_SERVICE);
убедитесь, что вы добавили необходимые разрешения в манифест!
Да, все мои разрешения, я думаю, включены




В конце концов, проблема заключалась в том, что мое устройство не позволяло мне использовать эту информацию для заполнения массива. На другом смартфоне все работает нормально. Спасибо
Что такое
tm? опубликовать инициализацию тм