测试已测试 | ✓ |
语言语言 | SwiftSwift |
授权 | Apache 2 |
发布日期最新版本发布日期 | 2017年9月 |
Swift版本Swift版本 | 3.0 |
支持支持SPM | ✓ |
由Matt Smollinger维护。
这是iOS SDK包装和便捷框架,使iOS开发者与Pelias地理编码器实例(https://github.com/pelias/pelias)的交互更加容易/快速/更好。
我们建议使用CocoaPods(https://cocoapods.org.cn/)安装SDK。我们目前支持两个子spec:Core和MapkitExtensions。Core仅依赖于Foundation的存在。MapkitExtensions依赖于CoreLocation、MapKit和iOS 9.0+的联系人框架存在(如果您使用CocoaPods安装,它将添加这些到项目中)。
以下是一些示例,说明如何轻松使用SDK。请确保阅读文档以查看您在请求时可以定制的所有属性。
通过搜索地址或名称找到地点
let text = "cafe"
let config = PeliasSearchConfig(searchText: text, completionHandler: { (searchResponse) -> Void in
let responseDictionary = searchResponse.parsedResponse?.parsedResponse
// update UI based on responseDictionary
})
_ = PeliasSearchManager.sharedInstance.performSearch(config)
使用自动完成实时提供结果建议
let text = "cafe"
let point = GeoPoint.init(latitude: 40.74433, longitude: -73.9903)
let config = PeliasAutocompleteConfig(searchText: text, focusPoint: point, completionHandler: { (searchResponse) -> Void in
let responseDictionary = searchResponse.parsedResponse?.parsedResponse
// update UI based on responseDictionary
})
_ = PeliasSearchManager.sharedInstance.autocompleteQuery(config)
找到位于某个坐标位置的地点
let point = GeoPoint.init(latitude: 40.74433, longitude: -73.9903)
let config = PeliasReverseConfig(point: point, completionHandler: { (searchResponse) -> Void in
let responseDictionary = searchResponse.parsedResponse?.parsedResponse
// update UI based on responseDictionary
})
_ = PeliasSearchManager.sharedInstance.reverseGeocode(config)
获取有关地点的丰富详细信息
let gids = ["gid", "anotherGid"]
let config = PeliasPlaceConfig(gids: gids, completionHandler: { (searchResponse) -> Void in
let responseDictionary = searchResponse.parsedResponse?.parsedResponse
// update UI based on responseDictionary
})
_ = PeliasSearchManager.sharedInstance.placeQuery(config)
SDK附带一个示例应用,您可以直接在XCode中运行。
我们欢迎使用Github Issue追踪器报告问题。但是,在报告错误之前请先查看当前已打开的问题,以避免问题追踪器的重复。
请发送您所有想要提交的 PR!我们对良好的测试覆盖率进行强制执行,所以在提交拉取请求之前,请确保所有新代码都已覆盖,并确保测试在本地通过!
请参阅 CHANGES.md 文档以查阅 SDK 的主要变更历史。