我正在开发一个应用程序,它使用谷歌 API 来获取交通解决方案,以便在所需的时间到达某个位置。
\n\n我调用 google API 的代码与“驾驶”和“步行”出行模式完美配合,但对于“公交”和“骑自行车”,响应始终标记为状态“ZERO_RESULTS”,并且不计算任何路线。\n这由google 文档,意味着在必须计算解决方案的国家/地区不提供公共交通和骑自行车服务。\n我尝试了多个国家/地区,但总是得到相同的结果,我还尝试了概述中的 Google 示例(针对公共交通)和它不起作用。
\n\n我通过 HTTPS 请求传递的参数是:出发地、目的地、出行方式、到达时间。\n我尝试的第一件事是更改到达时间,以防该值指的是过去或太遥远的未来,但它不起作用。
\n\n如果我没有通过“arrival_time”,响应是完美的,但我不明白,因为在 Google 文档中很清楚,arrival_time 是 https 请求的一个可能参数,也适用于过境旅行模式。如果没有这个论点,这个请求对我的目标来说毫无用处。
\n\n奇怪的是,如果我通过“过境”(带有到达或出发时间),则响应是这样的:
\n\n{\n "available_travel_modes" : [ "DRIVING", "WALKING" ],\n "geocoded_waypoints" : [\n {\n "geocoder_status" : "OK",\n "place_id" : "ChIJu46S-ZZhLxMROG5lkwZ3D7k",\n "types" : [ "locality", "political" ]\n },\n {\n "geocoder_status" : "OK",\n "place_id" : "ChIJ53USP0nBhkcRjQ50xhPN_zw",\n "types" : [ "locality", "political" ]\n }\n ],\n "routes" : [],\n "status" : "ZERO_RESULTS"\n}\nRun Code Online (Sandbox Code Playgroud)\n\n如果我通过“骑自行车”(所有其他参数不变):
\n\n{\n "available_travel_modes" : [ "DRIVING", "WALKING", "TRANSIT" …Run Code Online (Sandbox Code Playgroud)