我想了解我的手机用于数据连接的连接类型和理论数据速率,以及它在不同位置如何变化。我不是在寻找像speedtest.net这样的实际数据速度测试,而是在记录数据连接类型(GPRS,HSDPA,HSDPA +)以及特定的调制和UE类别(请参阅用户设备(UE)表)本文中的类别)。
该信息应该可以从手机的无线电中获得,而无需实际通过网络发送其他数据。
我想将此信息以及一个大概的位置记录下来,可能作为一个后台进程(该进程仅在数据连接处于活动状态时运行,这样才不会耗尽电池)。
我想了解我的手机用于数据连接的连接类型和理论数据速率,以及它在不同位置如何变化。我不是在寻找像speedtest.net这样的实际数据速度测试,而是在记录数据连接类型(GPRS,HSDPA,HSDPA +)以及特定的调制和UE类别(请参阅用户设备(UE)表)本文中的类别)。
该信息应该可以从手机的无线电中获得,而无需实际通过网络发送其他数据。
我想将此信息以及一个大概的位置记录下来,可能作为一个后台进程(该进程仅在数据连接处于活动状态时运行,这样才不会耗尽电池)。
Answers:
我认为您需要的网络数据可以通过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
这是来自GSM的Galaxy Nexus-如果您的手机是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 kb,是免费的,请尝试一下。