这两天研究通过基站获取位置信息的方式,我用到了比较成熟的方案就是获取手机CellID(小区标示)的方法来获取手机所在的经纬度,具体是方式我上篇文章有些,想了解细节的朋友可以看看。
这两天写了个demo,很奇怪我在自己的WM5PPC上调试通过,都可以取到比较准确的位置信息,结果我老大的手机是cdma的WM6.5,死活去不出来,程序一打开就像死机一样,想关闭也关不了,没办法只能一步步调试代码,结果到RIL_GetCellIDINfo后的waitone上就不动了,最后查了一下结果在初始化RIL的时候没有返回正确的句柄,是没有在前面正确判断是否成功导致程序死等,问题在于为啥这个api没法用?查了很多资料最终得到一个结果,CellID这个方式对于GSM和CDMA都是可用的,所以不是CDMA的问题,而是机器的问题,对于WM的手机,MS规定了RIL的一个标准,没有规定厂商必须实现,所以有些厂商偷懒或者有私心本身没有暴露给我们,气氛!!
最后google查到一个不完全列表:
支持CellID的手机:
支持 GPS, 但不支持cell ID:
不支持cell ID.
上面这个列表希望对你有用,我在网上也查到了其他的方法,我这样天在验证一下,具体的逻辑是直接去读某段内存地址
直接读取CellID,如果成功我这里会给大家分享出来:)
by wangweixing2000 2009-06-15 21:46:29
发表于 @ 2009年06月15日 21:21:00 | 评论( loading... ) | 举报| 收藏