我们已开始开发位置感知紧急服务的应用程序。用户可以通过计算机,智能手机甚至通过WAP连接。
我们面临的问题是,我们不知道如何获取要求服务的用户的位置。如果它是支持GPS的智能手机,它可以通过应用程序找到。我已经看到谷歌地图使用BTS塔在无GPS智能手机(如诺基亚E系列)中的位置定位手机。但我找不到诺基亚网站上的任何API,我可以使用它来获取该位置或基于BTS塔的定位服务。
主要问题仍然是计算机。如果我可以找到计算机的城市就足够了。我已经在几个站点(如ip2location.com)中看到了将IP地址定位到城市级别(有时更多)。是否有其他方法可以免费定位IP地址?
如果我总结一下我的问题 -
提前致谢。
答案 0 :(得分:1)
4号是地理编码(#3称为......反向地理编码)
看看android的来源,它似乎基于手机信号塔进行三角测量(当没有GPS或WiFi可用时)
答案 1 :(得分:1)
有一些常见的蜂窝塔三角测量提供商(或越来越常见的WiFi网络三角测量):Skyhook Wireless,Google和Apple。
你可以尝试与这些公司达成交易,或者在每个人的设备上安装他们的自定义软件,但这听起来像是很多工作。我认为更成功的是利用一些框架抽象,它可以在很多设备上运行,而无需软件处理每个细节。
如果您的用户使用网络,W3C Geolocation API可为支持它的现代浏览器(桌面设备,笔记本电脑和移动设备)提供与设备当前位置无关的实施访问权限。如您所见,还有原生平台特定的框架(iPhone和Mac OS X上的CoreLocation,Windows 7位置平台,Android的LocationManager等)。
如前所述,地理编码和反向地理编码服务可以帮助您在lat-lon坐标和城市地址之间进行转换,反之亦然。
答案 2 :(得分:0)
如果您不关心超精确度,并且您不想通过提醒您的用户请求他们访问其位置的权限,那么您可以使用{{{{{{ 3}}。我已经写了一个小jQuery插件,利用它。请参阅FreeGeoIP。也支持jsonp
请求,以便您可以从任何网站使用它,包括仅限静态HTML的网站。