测量手机上的"真实"手机信号强度

Ser*_*eim 6 android mobile-phones windows-mobile java-me

我想以编程方式测量手机中的手机信号强度.我实际上并不关心手机或编程环境:它可以基于Android或Windows Mobile甚至J2ME,可以来自任何制造商(请不要iPhone).但是,它需要是真正的商用手机而不是特殊的测量设备.

这个问题并不像初看起来那么容易.我知道已经存在许多声称能够恢复手机信号强度的方法.其中一些是:

  • WM6的SystemState.PhoneSignalStrength
  • WinCe的RIL_GetCellTowerInfo(返回的RILCELLTOWERINFO结构的dwRxLevel成员)
  • android.telephony.NeighboringCellInfo.getRssi()for android

上面的问题是它们只返回一些(小于10)离散值,这意味着,例如,SystemState.PhoneSignalStrength的返回值只能转换为(例如)-100 dbm,-90 dbm, - 80 dbm,-70 dbm和-60 dbm,这对我的应用程序没用,因为我希望尽可能多的精度.

如果有一个无证件的解决方案只能在一部手机上运行,​​那么无所谓,如果你能告诉我一种我会感激的方式.

提前致谢

Ser*_*eim 2

这是我为仍在寻找答案的人找到的解决方案:

一些 Windows Mobile HTC 手机有一个名为 fieldtest.exe 的程序,其中包含我需要的信息(可能其他手机也有这个,我只测试了特定的 HTC,但从 google 搜索我了解到大多数 HTC WM 手机都有它) 。现场测试程序不仅具有电话的准确信号强度,而且还具有大量其他非常有用的电话信息,否则无法获得。

唯一的问题是如何在进程中使用该程序的数据,因为所有值都存储在 ListView 中。

嗯,这就是我发布的另一个问题的要点。

因此,解决方案是运行 fieldtest 程序并从那里提取/窃取所需的值!