从json获取坐标并在谷歌地图(Android)上搜索[重复]

     2023-05-07     306

关键词:

【中文标题】从json获取坐标并在谷歌地图(Android)上搜索[重复]【英文标题】:Take Coordinates from json and search on Google map (Android) [duplicate] 【发布时间】:2018-03-02 10:25:57 【问题描述】:

我正在 Android 上开发一个地图应用程序,用于寻找最佳道路。 问题不是所有道路名称都在 Google API 上,所以我将它放在一个 JSon 文件中。 这是从 JSon 文件中获取坐标并将其显示给 Android 应用程序的最佳方法 从位置 A 到 B 的线条。

    
   "type": "FeatureCollection",
   "crs": 
      "type": "name",
      "properties": 
         "name": "urn:ogc:def:crs:OGC:1.3:CRS84"
      
   ,
   "features": [
      
         "type": "Feature",
         "properties": 
            "Name": "po",
            "description": "",
            "timestamp": null,
            "begin": null,
            "end": null,
            "altitudeMode": null,
            "tessellate": -1,
            "extrude": 0,
            "visibility": -1,
            "drawOrder": null,
            "icon": null,
            "description_1": null,
            "Number": "10",
            "RoadNameCo": "03_10234",
            "RoadNameAL": "MEHDI HOXHA"
         ,
         "geometry": 
            "type": "Point",
            "coordinates": [
               20.853835,
               42.601668,
               0
            ]
         
      ,
      
         "type": "Feature",
         "properties": 
            "Name": "po",
            "description": "",
            "timestamp": null,
            "begin": null,
            "end": null,
            "altitudeMode": null,
            "tessellate": -1,
            "extrude": 0,
            "visibility": -1,
            "drawOrder": null,
            "icon": null,
            "description_1": null,
            "Number": "16",
            "RoadNameCo": "03_10234",
            "RoadNameAL": "MEHDI HOXHA"
         ,
         "geometry": 
            "type": "Point",
            "coordinates": [
               20.854006,
               42.60127,
               0
            ]
         
      

   ]

【问题讨论】:

究竟是什么问题?你不能解析 JSON,或者你不能在地图上做路线?这是 2 个不同的问题,每个问题都已经在这里回答了数百次。 不知道如何将 json 解析为谷歌地图? 您无法将 JSON 解析为谷歌地图。正如我所说,这是两个不同的问题。首先将 JSON 解析为坐标,然后将坐标设置为谷歌地图。那么您的问题是 2 个不同且完全不相关的任务中的哪一个? 好的,谢谢或您的帮助。 l 如何将JSON解析为坐标? each of which was answered here already for few hundred times - 搜索Android parse json,你会找到100多个答案 【参考方案1】:

试试这个

private List<LatLng> getLocationList(String JSON_String)

   List<LatLng> locationList = new ArrayList<>();
    try 

        JSONObject object = new JSONObject(JSON_String);
        JSONArray mArray = object.getJSONArray("features");

        for(int i=0;i<mArray.length();i++)

            JSONObject obj=mArray.getJSONObject(i);
            JSONObject geometryObject=obj.getJSONObject("geometry");
            JSONArray locationJSON_Array=geometryObject.getJSONArray("coordinates");

            LatLng location=new LatLng(locationJSON_Array.getDouble(0),locationJSON_Array.getDouble(1));
            locationList.add(location);
        

    catch (JSONException ex)
        ex.printStackTrace();
        //handle Exception
     
    return locationList;

这样使用

List<LatLng> LocationList =getLocationList(Your_JSON_String);//The String posted in question
LatLng firstLocation=locationList.get(0);
LatLng secondLocation=locationList.get(1);

如果有什么问题请告诉我

【讨论】:

【参考方案2】:

试着像这样解析:

JSONArray lat_long_jsonArray = jsonObject.getJSONArray("coordinates");
if (lat_long_jsonArray.length() != 0)


  String Longitude(lat_long_jsonArray.get(0).toString());

  String Latitude(lat_long_jsonArray.get(1).toString());

【讨论】:

请检查你的代码,它不会编译 @VladMatvienko 我只给了你如何从坐标 JsonArray 中获取坐标,现在你必须解析。 提问的不是我,但您的代码无效。请仔细检查 Lat 和 Long 声明,或者用法,或者它应该是什么,不清楚。 @MuharremSmakiqi,对不起,我不想要一个。

在谷歌地图上绘制区域

...该地区周围有边界。我的问题是:有没有办法从googlemapapi获取所有地区的列表某个省或国家?我可以结合区域信息,例如更改颜色并在区域顶部添加一些信息窗口吗?我可以从 查看详情

如何在谷歌地图上获取图像视图坐标(位置/纬度)

】如何在谷歌地图上获取图像视图坐标(位置/纬度)【英文标题】:Howtofetchimageviewco-ordinates(position/latlon)ongooglemap【发布时间】:2018-07-1606:15:37【问题描述】:长期以来,我一直在努力实现这一目标。但做不到。所以我确实需要... 查看详情

我想通过从 json 获取经度和纬度在谷歌地图上显示标记

】我想通过从json获取经度和纬度在谷歌地图上显示标记【英文标题】:iwanttoshowmarkerongooglemapbygettinglongitudeandlatitudefromjson【发布时间】:2016-12-1506:13:40【问题描述】:我想通过从json获取经度和纬度来在谷歌地图上显示标记。如... 查看详情

在谷歌地图中插入可变 GPS 坐标

...3-04-1713:26:18【问题描述】:我希望我的脚本从GPS(手机)获取纬度和经度坐标,然后将它们插入谷歌地图并显示手机的位置。好吧,我能够从GPS中检索经纬度坐标,但它不会将它们作为显示的地图的中心插入。我的代码:<scrip... 查看详情

在谷歌地图标记上显示信息

...【发布时间】:2019-05-1716:33:40【问题描述】:我正在尝试获取保存在firebase实时数据库中的信息,并使用GoogleMapsAPI在地图上显示它们。这是我的火力基地这是我在地图上的标记现在它打开并显示用户当前位置,并使用Geofire将纬... 查看详情

如何在谷歌地图上添加多边形?

...使用map_view插件来绘制多边形。但这对我不起作用。这是获取坐标的代码sn-p。Geolocatorgeolo 查看详情

Android,在谷歌地图上绘制路线

】Android,在谷歌地图上绘制路线【英文标题】:Android,drawrouteongooglemap【发布时间】:2011-06-0706:28:43【问题描述】:在我的android项目中,我想在Google地图上绘制路线。我有起点和终点的坐标。在这一点上,我从谷歌网络服务获得... 查看详情

如何在谷歌地图上添加多个标记

...21-09-1207:14:33【问题描述】:我正在尝试从从firebase读取的坐标中添加多个标记。它读取所有坐标并存储在列表中。我创建了addMarker函数来将标记添加到地图中。但它只打印一个标记,读取最后一个标记坐标。谁能帮我解决这个问... 查看详情

使用当前位置将折线绘制到目的地,并在谷歌地图上添加标记,标记颤动

...描述】:我有一个带有谷歌地图的应用程序,该应用程序获取我当前的位置,地图上有两个标记,标记的一个点和折线是从前一 查看详情

如何使用我的 JSON 数据在谷歌地图 API 上创建标记?

...PI?【发布时间】:2021-06-1501:12:00【问题描述】:我有一堆坐标存储在一个JSON对象中,用作一些谷歌地图标记的信息。我正在尝试设置一个“点击”事件监听器,它将使用来自JSON对象的数据和在我的谷歌地图API中创建一个标记,... 查看详情

Android - 像谷歌地图一样准确获取坐标[重复]

】Android-像谷歌地图一样准确获取坐标[重复]【英文标题】:Android-getcoordinatesaccuratelylikeGoogleMaps[duplicate]【发布时间】:2021-10-2404:34:58【问题描述】:我怎样才能像谷歌地图一样准确地获取我的当前坐标?到目前为止,我已经使... 查看详情

如何在谷歌地图上找到某个点和一条线之间的最近坐标?

...时间】:2018-01-1910:45:06【问题描述】:这个问题专门针对Android,但我也了解JavaScript。在下图中,A、B和C是已知的Google地图坐标。我需要找出点X的坐标。X点的坐标是A和B的连线距离C点最 查看详情

在谷歌地图android中查找两个坐标之间的道路距离

】在谷歌地图android中查找两个坐标之间的道路距离【英文标题】:Findingroaddistancebetweentwocoordinatesingooglemapandroid【发布时间】:2014-09-1305:07:03【问题描述】:我正在使用下面这段代码在android中查找两组坐标之间的道路距离:public... 查看详情

如何在谷歌地图上显示搜索地址。?

...我正在研究goole地图,我在google地图上添加以下搜索栏并获取特定搜索地址的坐标。现在我想在选择地点后也将其显示在地图上。请看我的代码。-(void)searchBarTextDidBeginEditing:(UISearchBar*)searchBa 查看详情

使折线水平显示在谷歌地图上并将其缩放到中心坐标

】使折线水平显示在谷歌地图上并将其缩放到中心坐标【英文标题】:Makepolylinetoshowongooglemaphorizontallyandzoomittocentercoordinate【发布时间】:2021-12-3022:51:39【问题描述】:我正在使用GoogleMapsAPIJavaScript。我的用例是我需要在地图上... 查看详情

从表格中获取坐标并在地图上显示

】从表格中获取坐标并在地图上显示【英文标题】:ObtainingCoordinatesfromformanddisplayonmap【发布时间】:2014-02-2314:59:25【问题描述】:我正在尝试在表单中输入两个坐标,当用户单击提交时,我希望它运行“getSavedLocation()”方法。... 查看详情

无法在谷歌地图上看到多个标记

...歌地图上显示多个标记。我的latlng坐标是从Parse数据库中获取的,但我看不到标记。我的第二个问题是我想显示一个带有标记的餐厅名称的标题,我该怎么做?这是我的代码:私有类putMarker扩展AsyncTask>@覆盖受保护的ArrayLis 查看详情

如何读取这个本地 json 文件,并在 Adroid 上使用 Markers 获取地图上的坐标渲染?

】如何读取这个本地json文件,并在Adroid上使用Markers获取地图上的坐标渲染?【英文标题】:Howtoreadthislocaljsonfile,andgetthecoordinatesrenderingonmapwithMarkersonAdroid?【发布时间】:2020-02-1818:09:03【问题描述】:我的问题是读取本地json文件... 查看详情