更新时间:2020-06-23
什么是位置短地址分享
位置短地址分享(简称短串分享),是指用户检索得到的每一个地理位置都会对应一条短链接,通过短信、邮件或第三方分享组件,用户可以将该地理信息短链接分享出去,从而实现对地理位置信息的分享。其他用户点击收到的短链接即可调启百度地图客户端或浏览器查看该地理信息。
例如:当用户检索“百度大厦”后会得到短串“http://j.map.baidu.com/BkmBk” ,通过短信将该短串分享后,收到短信的用户点击该链接即可调启百度地图客户端或者浏览器查看“百度大厦”的地理位置信息。
短串分享功能目前开放了“POI检索结果分享”、“路线规划短串分享(驾车、公交、骑行、步行)和“逆地理编码结果分享“等。
怎样使用位置短地址分享
POI检索结果分享
1通过POI检索,获取想要分享的地理信息的UID(参考POI检索)
2创建短串分享工具类实例
mShareUrlSearch = ShareUrlSearch.newInstance();
3创建短串分享检索监听器
OnGetShareUrlResultListener listener = new OnGetShareUrlResultListener() { @Override public void onGetPoiDetailShareUrlResult(ShareUrlResult shareUrlResult) { //通过getUrl方法获取POI信息的短链 String shareUrl = shareUrlResult.getUrl(); //分享POI信息 } ...... };
4设置短串分享检索监听器
mShareUrlSearch.setOnGetShareUrlResultListener(listener);
5发起POI检索短串分享请求
//天安门UID mShareUrlSearch.requestPoiDetailShareUrl(new PoiDetailShareURLOption().poiUid("65e1ee886c885190f60e77ff"));
6销毁短串分享检索实例
mShareUrlSearch.destroy();
逆地理编码结果分享(坐标转地址)
1创建短串分享工具类实例
mShareUrlSearch = ShareUrlSearch.newInstance();
2创建短串分享检索监听器
OnGetShareUrlResultListener listener = new OnGetShareUrlResultListener() { @Override public void onGetLocationShareUrlResult(ShareUrlResult shareUrlResult) { //通过getUrl方法获取位置信息的短链 String shareUrl = shareUrlResult.getUrl(); //分享位置信息 } ...... };
3设置短串分享检索监听器
mShareUrlSearch.setOnGetShareUrlResultListener(listener);
4发起位置检索短串分享请求
mShareUrlSearch.requestLocationShareUrl(new LocationShareURLOption() .location(new LatLng(39.915291, 116.403857)) .name("天安门") //分享点名称 .snippet("天安门广场")); //分享点附加信息
5销毁短串分享检索实例
mShareUrlSearch.destroy();
路线规划短串分享
以驾车路线规划短串分享为例说明路线规划短串分享的方法。步行、骑行及公交路线规划分享与驾车路线规划分享相似。
注意:步行、骑行目前仅支持同城。
1创建短串分享工具类实例
mShareUrlSearch = ShareUrlSearch.newInstance();
2创建短串分享检索监听器
OnGetShareUrlResultListener listener = new OnGetShareUrlResultListener() { ...... @Override public void onGetRouteShareUrlResult(ShareUrlResult shareUrlResult) { //通过getUrl方法获取路线规划的短链 String shareUrl = shareUrlResult.getUrl(); //分享路线规划信息 } };
3设置短串分享检索监听器
mShareUrlSearch.setOnGetShareUrlResultListener(listener);
4设置起终点信息
PlanNode startNode = PlanNode.withCityCodeAndPlaceName(131, "西单"); PlanNode endNode = PlanNode.withCityCodeAndPlaceName(131, "百度大厦");
5发起驾车路线规划短串分享检索
/** * 四种模式如下 * *CAR_ROUTE_SHARE_MODE(0), * *FOOT_ROUTE_SHARE_MODE(1), * *CYCLE_ROUTE_SHARE_MODE(2), * *BUS_ROUTE_SHARE_MODE(3); * */ // routMode 设置路线规划短串分享模式为驾车模式 mShareUrlSearch.requestRouteShareUrl(new RouteShareURLOption() .from(startNode) .to(endNode) .routMode(RouteShareURLOption.RouteShareMode.CAR_ROUTE_SHARE_MODE));
6销毁短串分享检索实例
mShareUrlSearch.destroy();