Как я могу отслеживать и регистрировать режим и скорость подключения к данным, а также регистрировать местоположение?

Я хотел бы понять, какой тип подключения и теоретическую скорость передачи данных использует мой телефон для передачи данных, и как она меняется в зависимости от местоположения. Я не ищу фактический тест скорости передачи данных, такой как speedtest.net, а скорее регистрацию типа соединения для передачи данных (GPRS, HSDPA, HSDPA+), а также конкретной модуляции и категорий UE ( см. таблицу для пользовательского оборудования (UE) категории в этой статье ).

Эта информация должна быть доступна по радиотелефону без фактической отправки дополнительных данных по сети.

Я хотел бы, чтобы эта информация регистрировалась вместе с приблизительным местоположением, возможно, в качестве фонового процесса (который будет работать только при активном подключении для передачи данных, чтобы не разряжать батарею).

Ответы (7)

Я думаю, что необходимые вам сетевые данные доступны через logcat. Просмотрите сетевой буфер на своем телефоне, используя alogcat (Android 4.0 и более ранние версии) или adb (любые, но обязательные для Android 4.1 и более поздних версий) . Мне пришлось использовать этот оператор в adb:

adb logcat -b radio GsmSST:D *:S

Полученный список включал записи журнала, подобные приведенной ниже:

D/GsmSST  (  707): [GsmSST] handlPollStateResultMessage: GsmSST setDataRegState=0 regState=1 dataRadioTechnology=9

Это от Galaxy Nexus, который является GSM - если ваш телефон CDMA, он будет выглядеть совсем иначе и ему потребуется другая команда adb. Обратите внимание на dataRadioTechnologyпорцию. Проведите небольшое тестирование, чтобы выяснить, что означают цифры (мой Google-foo работает недостаточно хорошо, чтобы найти ответ в Интернете).

Затем все, что вам нужно сделать, это отслеживать свое местоположение любым удобным для вас способом. Сопоставьте выходные данные logcat с журналами вашего местоположения, используя временные метки, и посмотрите, что вы получите!

Что-то вроде бокового ответа здесь: у вас настроена среда разработки android/eclipse? У меня нет конкретного ответа, но просмотр файлов журнала в подробном режиме без включенных фильтров покажет вам почти все, что делает телефон (... или, по крайней мере, то, что программисты решили отметить в файлах журнала. Мы программисты часто ленивы и забывают отключить журналы после того, как мы закончили отладку.) Так что, по крайней мере, журналы могут показать, какие службы радиосвязи / подключения активны. И оттуда вы можете найти через Google некоторую информацию о любых интерфейсах, которые они выставляют. Просмотр лог-файлов показывает массу интересных вещей.

WEll Если вы хотите просматривать данные журнала на Android, помимо местоположения, для этого есть приложение, которое называется GeoLog. Вы можете прочитать больше о приложении здесь http://topbestfreeapps.com/save-sensors-data-of-android-device-with-geolog-app/

Я не думаю, что он регистрирует местоположение, но я думаю, что он делает большую часть всего, что вы ищете:

Сетевой журнал

Я использую его время от времени для мониторинга сетевого трафика, и он работает очень хорошо.

Попробуйте Network Speed ​​https://play.google.com/store/apps/details?id=netspeed.pt Он регистрирует все ваши данные вместе с их типом. Очевидно, что он не регистрирует ваше местоположение. Я использую его каждый раз. Его размер составляет всего 43 КБ, и он бесплатный. Попробуйте.

Я использую Network Speed ​​уже довольно давно. Он указывает только пропускную способность данных. Как я упоминал в исходном посте, я ищу способ регистрировать тип соединения (GPRS, HSPA, LTE и т. д.) и конкретную модуляцию (теоретическая скорость передачи данных), которую сеть поддерживает/обеспечивает в данной геолокации. . До сих пор я не нашел ничего, что делает это.

Я использую приложение Stats Free . Он не только показывает вам данные, переданные через GPRS/HSDPA и WiFi (отдельно). Он даже показывает вам звонки и журналы сообщений.

Ссылка на приложение больше не работает

Настройки> Использование данных регистрирует весь сетевой трафик, доступный из jelly bean.

Пожалуйста, будьте более конкретными в своем ответе и дайте ответ, который полностью учитывает то, что ищет ОП.
Где эта скорость передачи данных журнала и тип соединения, как запросил OP? «Объем данных, используемых одним приложением» не запрашивался. Кроме того, нет записи с именем «где-то» (вы, вероятно, имеете в виду « Настройки» -> «Использование данных»? ).