美文网首页LocationAndroid开发经验谈Android开发
Android高德之旅(18)短串分享

Android高德之旅(18)短串分享

作者: 大公爵 | 来源:发表于2017-11-15 17:14 被阅读68次

废话

短串分享看似不起眼,实则很常用,我们经常分享位置给小伙伴用的就是短串分享。我们分享一个位置给小伙伴不可能把经纬度发过去,一来不直观,二来可能写的很长,三来显得太low,四来直接明文经纬度在有些场景下可能会有问题。所以高德把一个位置转换成几个字符表示的短串,既方便分享,又可以在多平台通用,实在很棒。

简介

短串分享分为四种:

  • 位置分享
  • 路径分享
  • POI分享
  • 导航分享

(1)位置分享

public void locationShare() {
    ShareSearch shareSearch = new ShareSearch(this.getApplicationContext());
    shareSearch.setOnShareSearchListener(this);
    LatLonSharePoint point = new LatLonSharePoint(POI_POINT.getLatitude(),
            POI_POINT.getLongitude(), "方恒国际中心A座");
    shareSearch.searchLocationShareUrlAsyn(point);
}

回调接口是ShareSearch.OnShareSearchListener

shareSearch.setOnShareSearchListener(new ShareSearch.OnShareSearchListener() {
    @Override
    public void onPoiShareUrlSearched(String url, int errorCode) {
        
    }

    @Override
    public void onLocationShareUrlSearched(String url, int errorCode) {

    }

    @Override
    public void onNaviShareUrlSearched(String url, int errorCode) {

    }

    @Override
    public void onBusRouteShareUrlSearched(String url, int errorCode) {

    }

    @Override
    public void onWalkRouteShareUrlSearched(String url, int errorCode) {

    }

    @Override
    public void onDrivingRouteShareUrlSearched(String url, int errorCode) {

    }
});

我们打印下回调结果

http://f.amap.com/4cpb_07AMnu

http://f.amap.com/4cpb_07AMnu就是最终要的短串,我们可以把这个短串发给别人,别人可以在手机app里打开,也可以在浏览器里打开。

(2)路径分享

public void locationShare() {
    ShareSearch shareSearch = new ShareSearch(this.getApplicationContext());
    shareSearch.setOnShareSearchListener(this);
    ShareSearch.ShareFromAndTo fromAndTo = new ShareSearch.ShareFromAndTo(START, END);
    ShareSearch.ShareDrivingRouteQuery query = new ShareSearch.ShareDrivingRouteQuery(fromAndTo,
            ShareSearch.DrivingDefault);
    shareSearch.searchDrivingRouteShareUrlAsyn(query);
}

返回结果

http://f.amap.com/4cpb_0BDMcE

(3)POI分享

public void locationShare() {
    ShareSearch shareSearch = new ShareSearch(this.getApplicationContext());
    shareSearch.setOnShareSearchListener(this);
    PoiItem item = new PoiItem(null, POI_POINT, "高德软件有限公司", "");
    shareSearch.searchPoiShareUrlAsyn(item);
}

返回结果

http://f.amap.com/6aPJO_05E3Mc1

(4)导航分享

public void locationShare() {
    ShareSearch shareSearch = new ShareSearch(this.getApplicationContext());
    shareSearch.setOnShareSearchListener(this);
    ShareSearch.ShareFromAndTo fromAndTo = new ShareSearch.ShareFromAndTo(START, END);
    ShareSearch.ShareNaviQuery query = new ShareSearch.ShareNaviQuery(fromAndTo,
            ShareSearch.NaviDefault);
    shareSearch.searchNaviShareUrlAsyn(query);
}

返回结果

http://f.amap.com/4cpb_057NFq

总结

细不细灰常方便!好吧,短串分享就讲这么多吧,本期节目就到这里,感谢大家收看,我们下期再见~

相关文章

  • Android高德之旅(18)短串分享

    废话 短串分享看似不起眼,实则很常用,我们经常分享位置给小伙伴用的就是短串分享。我们分享一个位置给小伙伴不可能把经...

  • Android高德之旅(3)UI Setting

    废话 前两篇讲到了地图的基础显示和地图类型,今天来记录下高德地图交互相关的设置。地图的触摸事件很丰富,有单击、双击...

  • Android高德之旅(8)绘制线

    废话 绘制线会比绘制点稍微复杂点,抛开一些复杂的属性不谈,主要分为三类:实线、虚线、纹理。绘制线在自定义地图中是非...

  • Android高德之旅(9)绘制面

    废话 这篇文章记录下绘制面,绘制面其实就是绘制形状,形状有很多种,但是归纳起来我们只要两种,一是圆形,二是多边形。...

  • Android高德之旅(2)地图类型

    废话 今天继续我们的Android高德之旅,上一篇已经可以显示最基本的地图了,有基本的缩放、旋转功能,还有最后做的...

  • Android高德之旅(1)基础地图

    废话1 这个系列之前在CSDN上就发了,不过刚开始就因为公司项目忙搁置了,现在转移阵地到简书,希望这次能坚持把这个...

  • Android高德之旅(15)天气查询

    废话 说到吃饭...呸,说到天气,其实这个并不属于地图或者导航的范畴,为什么高德要提供天气查询呢?两个字:讲究。天...

  • Android高德之旅(13)公交搜索

    废话 在LBS系统中怎能少了公交这个角色,大多数城市中,主要的公共交通工具还是公交车,高德地图当然会有相应的api...

  • 使用 keytool(jdk自带工具)获取SHA1

    前言 高德地图SHA1 在某些场景下,如:使用高德地图为Android平台添加Android Key时,需要使用到...

  • Android高德之旅(7)绘制点标记

    废话 本系列第7篇,终于讲到了绘制。说到吃饭...呸,说到绘制,这在地图应用中是非常重要的一部分,很多时候我们集成...

网友评论

    本文标题:Android高德之旅(18)短串分享

    本文链接:https://www.haomeiwen.com/subject/wixhvxtx.html