Я пишу приложение андроида, которое собирает мощности сигнала ячейки. Я испытываю затруднения при получении "текущей" мощности сигнала ячейки, но у меня нет проблемы при получении "соседних" мощностей сигнала ячейки.
Для получения мощности сигнала текущей ячейки я создал PhoneStateListener и реализовал onSignalStrengthChanged обратный вызов. Это работает, но не очень хорошо. Кажется, что мощность сигнала почти никогда не изменяется, и переходы разрешения только к нескольким числам. Я принял бы ответ, что разрешение аппаратных средств мощности сигнала крупно, но когда я использую getNeighboringCellInfo TelephonyManager () метод, это работает намного лучше. Чтения мощности сигнала от соседних ячеек часто изменяются, и у них есть намного лучшее разрешение.
Так, как я могу получить мощность сигнала текущей ячейки таким же образом, что я получаю соседние преимущества ячейки? Это кажется нечетным мне, что функциональность соседних ячеек лучше, чем текущая ячейка. Я пропускаю что-то здесь?
Я также хотел бы непосредственно назвать метод от менеджера по телефонии для получения силы текущей ячейки, в противоположность слушателю, если это возможно. Если кто-либо знает, как, сообщите мне.Спасибо.
Я думаю, что этот метод не очень хорошо работает, так как, как написано в javadoc, onSignalStrengthChanged()
устарел с api 2.0, и заменен на onSignalStrengthsChanged()
(обратите внимание на "s"), но, к сожалению, этот метод является закрытым !
Об этом есть открытая проблема, похоже, google удалил метод по неизвестной причине (возможно, потому что он не работает так хорошо, как вы заметили), и он будет доступен в следующем sdk-релизе.
Тогда вы просто должны набраться терпения и проголосовать здесь , чтобы ускорить процесс dev !