“Google Places API”有哪些替代品?无论是否有任何付费 API 服务。
6 回答
你可以试试 openStreetMap 一个开源地图项目http://www.osmfoundation.org/wiki/Main_Page
您还可以找到有关其工作原理的信息http://en.wikipedia.org/wiki/OpenStreetMap
是一个非常好的选择,它是由社区为社区制作的。
在为 iOS 应用程序中的用户输入位置字段搜索实现自动完成字段的方法时,我也遇到了这个问题。我认为它工作原理的最佳示例之一是在 Apple 的本地天气应用程序中制作的。“添加新位置屏幕”上的搜索结果比我尝试过的任何其他服务都多:
- Google Place API(主要替代品)
- Yelp
- Foursquare
- 其他一些。
不幸的是,天气使用 https 请求:(https://gsp-ssl.ls.apple.com)。:( 似乎没有解决方案来检索这些数据。但事实证明,Apple 并没有使用他们自己的服务来确定位置。
我检查了地图应用程序并尝试CLGeocoder
了它的类 - -(void)geocodeAddressString:(NSString *)addressString completionHandler:
(仅在 iOS 中存在)
最后一个没用,只找到一个结果,而谷歌给出了大约 5 分(作为莫斯科的一部分,“Mosc”这个词)
解决方案: Apple 放弃了 Yahoo 作为天气提供者,选择了TWC(prooflink)。所以我们的案例不是收集天气状况,而是获取位置,它们也提供什么!
确切地说,让我们比较几个服务:(
上图 - 利用 Place API 的谷歌地图,下图 - 苹果使用的 TWC)
优点(TWC):
- 可以按城市(邮编、机场等)进行搜索
- 找到更多结果(如果甚至为谷歌查询设置最大半径 - 50 000,它不会找到很多)
- 支持带有自动完成功能的 API options
- 非常适合自动完成的目的,包含 JSON 的所有基本字段,如下所示:
{
"name":"Moscu, CUN, COLOMBIA",
"key":"COXX8971:1:CO",
"locId":"COXX8971",
"locType":1,
"cityNm":"Moscu",
"cntryCd":"CO",
"_country":"COLOMBIA",
"stCd":"CUN",
"stNm":"Cundinamarca",
"bigCity":false
},
缺点:
- 如果您需要地理编码选项或查询地点,则功能远不如 Google。
- 处理请求比谷歌慢
我不知道为什么每次投票,但第一个投了反对票。好像很简陋...
无论如何,OpenStreetMaps 可能是一个可能的选择,但根据我的经验,与其他服务相比,他们没有太多关于企业的数据。
必应地图是另一个不错的选择。它是 Facebook 用于他们的“地点”页面的东西,它似乎有相当多的数据。
Foursquare 绝对是一个不错的选择……如果你留在美国。与谷歌相比,他们的费率相当有竞争力,但你必须处理重复的条目和一些未完全填写的信息。
我前段时间研究了 Yelp 的 API,所以我不记得它们有多好。我只记得与 Bing、Google 和 Foursquare 相比,它们提供的服务不如 Bing 好。
所有这些都是付费服务,除了 OpenStreetMaps。如果我没记错的话,谷歌拥有最好的企业整体数据,但在定价方面,Foursquare 占了上风。最后,这完全取决于您的具体需要,因为它们都是不错的选择。
试试 Foursquare.com,它的免费和使用限制非常可观。每小时 5000 个请求。
他们是:
- Yelp.com
- Foursquare.com
它们都有自己的 API,任何人都可以使用。
好的,据我所知,如果你想使用geo api,它必须是一家大公司。那么,bing map 或中国最大的互联网公司百度的baidu'map 怎么样?