Google maps 开发基于位置/地图的网站
我想开始开发一个基于地图的网站。 起初我订购了一台regulat Gps设备只是为了测试网站,后来我想使用Iphone的Gps和其他手机设备。 所以我需要一些很普通的东西 我在网上搜索基于地图的开发框架,找到了太多: 地理服务器、地图服务器、开放层、Geoext、谷歌地图的api等等 <>我不是一个经验丰富的Web开发(更多的是C++类的人),所以我需要一些非常简单的东西,虽然同时也很健壮。 此外,我需要一个是免费的,不会有许可证问题的道路上 首先,我只需要在我的网站上实时显示gps数据的基本功能 有经验的人能推荐一个吗Google maps 开发基于位置/地图的网站,google-maps,geolocation,gps,Google Maps,Geolocation,Gps,我想开始开发一个基于地图的网站。 起初我订购了一台regulat Gps设备只是为了测试网站,后来我想使用Iphone的Gps和其他手机设备。 所以我需要一些很普通的东西 我在网上搜索基于地图的开发框架,找到了太多: 地理服务器、地图服务器、开放层、Geoext、谷歌地图的api等等 我不是一个经验丰富的Web开发(更多的是C++类的人),所以我需要一些非常简单的东西,虽然同时也很健壮。 此外,我需要一个是免费的,不会有许可证问题的道路上 首先,我只需要在我的网站上实时显示gps数据的基本功能
谢谢我建议您使用谷歌地图API在浏览器中呈现地图。你可以找到我的理由
当前版本的API支持。我使用Bing Maps for mobile。主要是因为它的速度快,并且为英国提供了比谷歌地图更好的地图、3d模型和卫星视图 我也遇到过谷歌改变服务以提供一些增强功能的问题,它破坏了我的应用程序,至少通过Bing API,现有应用程序的兼容性有所提高。并不是说我不喜欢谷歌地图,我喜欢。这是我的备份服务 我从这两个供应商生成地图,Bing作为主要供应商,Goole作为次要供应商。。。这意味着,如果离线用户无法工作,我的用户仍然可以使用我的应用程序
客户机 我会选择OpenLayers——这是一个开源JavaScript客户端库,类似于GoogleMapsAPI或BingAPI。然而,OpenLayers将使您不必担心任何许可问题,或者在源代码可用且可以修改时更改API—Google/Bing/Yahoo API并非如此。但是,您可以将这些服务中的数据用作OpenLayers中的层,如果它们突然被广告填满或受到商业限制,则可以删除它们 请看一看示例,看看是否有一个可用于制作第一个测试应用程序的示例- GeoExtJS是一个与OpenLayers一起工作的额外工具和小部件的集合,构建在另一个JavaScript框架ExtJS(也是开源的)之上。ExtJS主要用于构建用户界面——数据输入表单、网格等,使用JavaScript在浏览器中显示 如果您正在寻找树结构来打开和关闭层以及其他更高级的UI小部件,那么GeoExtJS值得研究 服务器 如果只显示点,则可以在web服务器上创建动态KML或GeoJSON,并在OpenLayers中引用。有各种语言的库可供构建。Python已经成为地理空间技术中的一种关键语言,并且拥有可以编写脚本的GeoJSON库 GeoServer和MapServer都是服务器端程序,允许您使用符号、标签等从数据库中提供空间数据。如果您有许多不同的数据集,那么花时间进行设置是值得的 MaServer是用C++编写的,所以你尝试起来可能更容易——但是你可以在不需要任何专业服务器端软件的情况下逃脱,特别是如果你的数据由X、Y/Lon、LAT值组成,这些值可以很容易地绘制为点。p> 我想看看。他们有许多API、免费选项、付费选项,并使用OpenStreetMap,这在许多地方是最精确的地图解决方案之一 首先(你说需要实时显示gps位置),我认为这是一个不错的选择。这个解决方案有非常简单的API,社区支持也是一个优势(我从未与其他东西相比,但我对GMAP及其教程/资源有很好的经验)。这是针对客户端的,对于服务器端,任何web框架都应该完成这项工作(我使用Django,它还为一些地理方面的事情提供了dupport—在本回答后面提到) 您可能需要构建遵循以下规则的应用程序:
API:尽管它仍然是草案形式,HTML5将提供支持。在不久的将来,大多数主流浏览器和手持设备都应该支持它,这将使想要独立于服务的解决方案的开发人员的生活更加轻松。然而,如果你需要显示位置,你仍然需要像谷歌地图这样的地图服务
function showMap(position) {
// Show a map centered at (position.coords.latitude, position.coords.longitude)
}
// One-shot position request.
navigator.geolocation.getCurrentPosition(showMap);
编辑:
它已在多个主要浏览器中得到支持:
- Mozilla Firefox:在Firefox中受支持 3.5及更高版本李>
- Chrome:通过Google Gears提供支持 地理定位API
- 歌剧院:支持 夜间建造
- Safari:支持是必要的 即将在IPhone的Safari中发布 浏览器李>
- Internet Explorer: 实验支持可从 IE8