首页 > 解决方案 > 谷歌地图路线

问题描述

我想在谷歌地图上显示路线,但出现此错误

我只调用了这个 api 一次,但是第一次我得到了这个错误

我应该怎么办 ?

OVER_QUERY_LIMIT

let url = "https://maps.googleapis.com/maps/api/directions/json?origin=\(origin)&destination=\(destination)&mode=driving"

    Alamofire.request(url).responseJSON { response in
        //print(response.request as Any)  // original URL request
        //print(response.response as Any) // HTTP URL response
        //print(response.data as Any)     // server data
        //print(response.result as Any)   // result of response serialization

        let json = try! JSON(data: response.data!)
        let routes = json["routes"].arrayValue
        print(json)
        // print route using Polyline

        DispatchQueue.global(qos: .default).async(execute: {() -> Void in
            // Do something...
            DispatchQueue.main.async(execute: {() -> Void in
                // self.hideHUD()
            })
        })
        for route in routes
        {
            let routeOverviewPolyline = route["overview_polyline"].dictionary
            let points = routeOverviewPolyline?["points"]?.stringValue
            let path = GMSPath.init(fromEncodedPath: points!)
            let polyline = GMSPolyline.init(path: path)
            polyline.strokeWidth = 4
            polyline.strokeColor = #colorLiteral(red: 0, green: 0.4784313725, blue: 1, alpha: 1)
            polyline.map = self.mapView

        }

标签: iosswiftgoogle-mapsalamofire

解决方案


从 2018 年 9 月 10 日开始,巴西、加拿大和印度的自助服务客户的使用量将限制为 200 美元/月。这种情况是暂时的。有关更多详细信息,请参阅地图常见问题解答。一项新的即用即付定价计划现已适用于 Google Maps Platform API。

了解地图、路线和地点的计费


推荐阅读