OpenStreetMap是否具有点(源)到点(目的地)方向uri在Android中使用?

时间:2015-06-16 06:42:45

标签: java android dictionary openstreetmap osmdroid

在我的应用程序中,我集成了 OpenStreetMap ,其中我已经获取了源和目标坐标。我需要使用 Intent 类将这些坐标传递给 OpenStreetMap 应用程序,因为我需要 Uri

经过2天的搜索,我得到了这个Uri

http://www.openstreetmap.org/?mlat=latitude&mlon=longitude&zoom=12

目前仅支持一个位置,但我不想要它。

任何人都可以帮我这个吗?提前谢谢......

以下是我的代码

Intent sendLocationToMap = new Intent(android.content.Intent.ACTION_VIEW, 
Uri.parse("http://openstreetmap.org/?mlat=13.074847&mlon=80.271019&zoom=12"));
startActivity(sendLocationToMap);

2 个答案:

答案 0 :(得分:0)

我假设您在询问routing。在这种情况下,答案是肯定的,有各种online routers(例如GraphHopper,OSRM和MapQuest)以及可用的OSM offline routers。许多在线路由器提供GPX导出。

答案 1 :(得分:0)

您需要使用/directions端点。

示例(以下意图将打开www.openstreetmap.org网站,其中包含两点之间的路线):

http://www.openstreetmap.org/directions?engine=osrm_car&route=53.1855%2C18.0272%3B53.0915%2C18.0087

Intent sendLocationToMap = new Intent(android.content.Intent.ACTION_VIEW, 
Uri.parse("http://www.openstreetmap.org/directions?engine=osrm_car&route=53.1855%2C18.0272%3B53.0915%2C18.0087"));
startActivity(sendLocationToMap);

OsmAnd应用程序不支持路线网址:

OsmAnd将只显示一个没有路由的地理点。

来源:https://github.com/osmandapp/Osmand/blob/master/OsmAnd-java/src/net/osmand/util/GeoPointParserUtil.java

但谷歌地图指南网址:

http://maps.google.com/maps?daddr=53.0915,18.0087&saddr=53.1855,18.0272

Google地图和HERE支持