显然,我正在使用GPS和网络提供商来获得对最终用户位置的适当修复(当两者都不可用时),并使用时间戳来确定哪个是最新的.
我搜索过谷歌,并提出了各种答案,例如:“它只是做”和“它的魔力” – 说实话,这是毫无用处的.我不想深入描述内部工作,只是略低于“它只是做”,或“它是如何工作的”.
请求的代码
// first get location from network provIDer // if(isNetworkEnabled) { locationManager.requestLocationUpdates( LocationManager.NETWORK_PROVIDER,MIN_TIME_FOR_UPDATES,MIN_disTANCE_CHANGE_FOR_UPDATES,this); Logging.DeBUG("GPSTracker","Network"); if(locationManager != null) { netLocation = locationManager.getLastKNownLocation(LocationManager.NETWORK_PROVIDER); if(netLocation != null) { latitude = netLocation.getLatitude(); longitude = netLocation.getLongitude(); speed = netLocation.getSpeed(); } } } // if gps is enabled get lat/lng using that as well // if(isGPSEnabled) { if(gpsLocation == null) { locationManager.requestLocationUpdates( LocationManager.GPS_PROVIDER,this); Logging.DeBUG("GPSTracker","GPS Enabled"); if(locationManager != null) { gpsLocation = locationManager.getLastKNownLocation(LocationManager.GPS_PROVIDER); if(gpsLocation != null) { latitude = gpsLocation.getLatitude(); longitude = gpsLocation.getLongitude(); speed = gpsLocation.getSpeed(); } } } }
非常感谢任何见解.谢谢.
解决方法 AndroID,Apple和其他公司可以访问庞大的数据库,在这里他们可以查找Wlan-Device-ID(WLAN路由器的Mac-Adress)到lat / lon坐标.因此,当您的手机检测到“已知”WLAN时,它可以:
– 查找Wlan-ID的本地缓存以进行协调,或者如果您有互联网连接,它可以通过该数据库连接并查询Wlan ID的坐标.
仍然是他们拥有WLAN-ID坐标的问题?
可能是您第一次在连接WLAN时激活GPS.
SkyHook就是提供这种数据的公司.
总结以上是内存溢出为你收集整理的android – 当使用LocationManager时,为什么有Wifi但没有连接帮助网络位置?全部内容,希望文章能够帮你解决android – 当使用LocationManager时,为什么有Wifi但没有连接帮助网络位置?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)