Трафик роуминга данных меры в Android?

Просто назад из очень хорошего отпуска в Исландии, и ждут счета роуминга данных из моей телефонной компании. Я надеюсь на лучшее, ограничивавшее мой трафик как можно больше, но я хочу знать заранее. Я использовал очень хорошее приложение NetCounter, но это не измерило бродящий трафик данных вообще.

Таким образом, я хочу создать свое собственное приложение, имеющее размеры просто бродящий по трафику данных. У меня есть несколько булевских переменных для запуска с (NetworkInfo. IsRoaming () и TelephonyManager.isNetworkRoaming ()), но я не уверен, как измерить трафик если true.

Таким образом, вопрос: Как я измеряю трафик данных при роуминге? (Что-то как уровень API 8, функциональность TrafficStats - то, что я после, но для уровня API 3). Используемым SmartPhone является Samsung Galaxy i7500 (Android 1.6)

Спасибо за внимание!

7
задан Benny Skogberg 3 August 2010 в 11:58
поделиться

2 ответа

Метод 1. Разберите «/ proc / net / dev».

В моем телефоне это выглядит так:

Inter-|   Receive                                                |  Transmit
 face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
    lo:     712       8    0    0    0     0          0         0      712       8    0    0    0     0       0          0
dummy0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
rmnet0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
rmnet1:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
rmnet2:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
 wlan0:  146112     423   32    0    0     0          0         0    42460     409    0    0    0     0       0          0

В моем телефоне строка «rmnet0» - это строка, в которой хранится статистика мобильного интернета. Надеюсь, его формат не меняется в зависимости от версии ядра.

Метод 2: Разобрать "/ sys / class / net".

Думаю, это рекомендуемый метод. Как показано здесь: http://www.jaqpot.net/svn/android/netcounter/trunk/src/net/jaqpot/netcounter/service/SysClassNet.java

9
ответ дан 6 December 2019 в 21:08
поделиться

В комментариях упоминалось несколько вариантов с открытым исходным кодом:

Я сейчас установил 3G Watchdog. Есть несколько комментариев автора к AndroLib , в которых говорится, что он не хочет выпускать исходный код, но я уверен, что с некоторой помощью сообщества мы все могли бы сотрудничать, чтобы создать лучшее приложение для использования данных. там.

Я думаю, что лучшим решением было бы взять код из NetMeter и запустить службу в фоновом режиме. Это делает 3G Watchdog (услуга называется net.NetMonitorService ).

3
ответ дан 6 December 2019 в 21:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: