我自己用LocationManager.requestLocationUpdates无法获得经纬度。
但有的客户端软件我试了一下,手机没有插卡,只用wifi,马上就确定了大概位置。但很多别的的客户端软件就定不出来。但这个能获得位置的,在模拟器上定出了一个错误的位置。
我猜是根据wifiid或者ip之类的来定的?但哪里提供这个服务呢?另外我想确认一下,是不是LocationManager使用“network”provider是不是现在根本就定不到位?

解决方案 »

  1.   

    现在的定位方式主要有以下三种:
    1.纯硬件定位
      需要GPS硬件支持,直接和卫星交互来获取当前经纬度2.纯软件定位
      一种是通过WIFI连接来确认热点的位置 然后给出一个比较大概的位置
      一种是通过移动基站的MSC交互来确认你注册的是那个基站 以及基站的位置 (可能和多个基站交互来获取较精确的位置信息)3.软硬件混合定位方式
      AGPS 先通过软件来获取大概位置 然后得到此区域的卫星序列 和卫星通信Android应该是都支持的 LocationManager把这几种方式都封装好了
    但是模拟器上估计哪一种都够呛了......
      

  2.   

    回ls,我都在手机上测试过。
    gps的不考虑了,因为比较慢,屋里也不能用,现在就是希望能做到:快速得到大概位置,无论是用cellid,或是wifiid。但手机上用LocationManager就是取不到。
    加上观察到市面的各种客户端,有的可以有的不可以,怀疑能做到的是不是有wifi地址数据库之类的?
      

  3.   

    WIFI地址数据库肯定是有的
    至少我知道你得到你的WIFI的AP地址之后
    是需要连接WIFI数据库来获得真正的地址的