腾讯地图 android sdk,Android SDK | 腾讯位置服务

腾讯Android街景SDK是腾讯为Android平台提供的一套街景服务接口,通过该接口,您可以轻松地使用腾讯提供的地图服务和数据,构建自己的街景应用程序,目前支持Android 2.1以上的版本。

街景SDK需要以下系统权限

首先将StreetViewPanoramaView添加到main_activity,代码如下:

然后,MainActivity代码如下:

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

setContentView(R.layout.main_activity);

StreetViewPanoramaView mPanoramaView;

StreetViewPanorama mPanorama;

mPanoramaView = (StreetViewPanoramaView)findViewById(R.id.panorama_view);

mPanorama = mPanoramaView.getStreetViewPanorama();

mPanorama.setPosition(39.984122, 116.307894);

}

以上代码只是通过腾讯坐标获取街景,您也可以通过墨卡托坐标、街景ID来获取所需街景。您还可以设置街景的搜索半径,即在指定坐标未找到街景的时候显示指定半径距离内的街景(默认100m)。

setposition相关函数说明:

//设置需要加载的街景的经纬度(GCJ02 经纬度坐标系)

mPanorama.setPosition(double latitude, double longitude)

//设置需要加载的街景的经纬度(GCJ02 经纬度坐标系),第三个参数设置寻找街景的范围半径(m)

mPanorama.setPosition(double latitude, double longitude, int radius)

//设置需要加载的街景的经纬度(GCJ02墨卡托 坐标系)

mPanorama.setPosition(int latitude, int longitude)

//设置需要加载的街景的经纬度(GCJ02墨卡托 坐标系),第三个参数设置寻找街景的范围半径(m)

mPanorama.setPosition(int latitude, int longitude, int radius)

//设置需要加载的街景ID

mPanorama.setPosition(java.lang.String panoId)

上面的代码运行效果如下:

fbfc64dba6ba0f718af59cf05338242b.png

在SDK中提供了对街景进行操作的类StreetViewPanorama,通过这个类,您可以轻松地对街景的各个属性进行控制,并且通过丰富的回调函数实现更加精细的功能。下面仅列出部分函数,详细内容请看参考手册。

StreetViewPanorama mPanorama = mPanoramaView.getStreetViewPanorama();

回调函数:

//设置街景视角变化的监听函数

mPanorama.setOnStreetViewPanoramaCameraChangeListener(StreetViewPanorama.OnStreetViewPanoramaCameraChangeListener listener)

//设置新的街景加载的监听函数

voidmPanorama.setOnStreetViewPanoramaChangeListener(StreetViewPanorama.OnStreetViewPanoramaChangeListener listener)

//设置街景加载完成的监听函数

voidmPanorama.setOnStreetViewPanoramaFinishListener(StreetViewPanorama.OnStreetViewPanoramaFinishListner listener)

街景控制:

//获取当前街景的街景信息

mPanorama.getCurrentStreetViewInfo()

//获取街景视角的水平偏转角(正北为0度)

mPanorama.getPanoramaBearing()

//获取街景的俯仰角,仰视为90度

mPanorama.getPanoramaTilt()

//获取是否显示控制街景切换室内图的路标

mPanorama.isIndoorGuidanceEnabled()

//获取是否允许手势拖动街景

mPanorama.isPanningGesturesEnabled()

//获取是否显示街道名字

mPanorama.isStreetNamesEnabled()

//获取是否显示控制街景切换的路标

mPanorama.isUserNavigationEnabled()

//获取是否允许手势放缩街景

mPanorama.isZoomGesturesEnabled()

//设置是否显示控制街景切换室内图的路标

mPanorama.setIndoorGuidanceEnabled(boolean enableUserNavigation)

//设置是否允许手势拖动街景

mPanorama.setPanningGesturesEnabled(boolean enablePanning)

//设置街景视角的水平偏转角(正北为0度)

mPanorama.setPanoramaBearing(float yawAngle)

//设置街景的俯仰角,仰视为90度

mPanorama.setPanoramaTilt(float pitchAngle)

//设置是否显示街道名字

mPanorama.setStreetNamesEnabled(boolean enableStreetNames)

//设置是否显示控制街景切换的路标

mPanorama.setUserNavigationEnabled(boolean enableUserNavigation)

//设置是否允许手势放缩街景

mPanorama.setZoomGesturesEnabled(boolean enableZoom)

以下为部分属性设置对比图:

室内图打开

室内图关闭

6aa559ae7f9a85681cc3ce1a28dadef7.png

d0d4b7ac6556e304b397041689ac900c.png

显示街道

不显示街道

7bfae8667a1a06bd5c7d642366db58f8.png

9e1418392554cc91a42b8a7cdcd8efc4.png

显示导航路标

关闭导航路标

5160e034b1d251337eadbddf4d5a3c25.png

128d2608b5cbae4ec28749e9b38f2966.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值