版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、地图 Android街景 SDK 开发指南V0.92014 年 3 月法律2013,保留一切权利。本文档包含的所有内容除特别之外,均属于所有,受中民著作权法及相关和中国加入的所有知识方面的国际条约的保护。本公司,任何和个人不得以任何方式(电子或机械,包括影印)或本文档的,否则将视为,保留依法其的权利。地图 API 的一切有关权利属于所有。可在不作任何本文档并不代表供应商或其的承诺的情况下对本文档内容进行修改。本文档中所涉及的产品及其后续升级产品均由制作并负责全权销售。本文档中提到的其它公司及其产品的商标所属于该商标的所有者。地图联系邮箱:技术交流:商务合作联系人:张先生/dedituapi:电
2、子邮箱:shiyue.地图 API 欢迎用户的任何建议或意见。目录1 简介11.11.21.31.4Android 街景 SDK1面向的读者1兼容性1申请 API Key123配置工程2街景显示43.13.23.3全景图的基本信息4显示设置4示例44可视区域操作74.14.24.34.4方向7俯仰角7缩放级别7示例75手势控制95.15.2缩放手势9方向手势96街景控件106.16.2导航线10街道名称117街景标注117.17.2添加和删除街景标注12示例128事件响应148.18.28.38.48.58.6点击街景事件14长按街景事件14切换全景图事件14视角改变事件14街景标注点击事件1
3、4示例149 街景截屏15I1简介Android 街景 SDK地图 Android 街景 SDK 是为 Android 应用开发者提供的在 Android应用中展现定点 360度全景图的开发包。通过街景,您可以更加真实和全方位地了解城市面貌。此 SDK 有街景展示,对街景缩放移动手势操作,在街景中添加标注,对当前街景截屏等方法。目前,街景覆盖城市城市。查看街景面向的读者地图Android 街景SDK 是提供给具有一定Android 编程经验和了解面此外,读者还应该对地图产品有一定的了解。象概念的读者使用的。用户在使用中遇到任何问题,都可以通过官网提供的或问答社区反馈给。兼容性地图 Androi
4、d 街景 SDK 0.9 版本支持 Android 2.2 及以上系统。申请 API Key为保证服务可以正常使用,您需要登录 AMap API申请 API Key。每个帐户,最多可以申请 10个 Key。Key 申请的具体流程请参照获取密钥。| 12配置工程工程配置操作如下:1.从并解压得到街景显示包“AMapPanoramaSDK0.9.jar”和文件夹“armeabi”(含libpanoramaAmapV0.9.so 文件)。注意:若您在 Eclipse 上使用 adt22 版本插件,则需要在 Eclipse 上进行如下配置:选中 Eclipse 的工程,右击选择“Properties
5、Java Build Path Order and Export”,勾选“Android Privaibraries”。2.开发工程中新建“libs”文件夹,将街景显示包拷贝到 libs 的根目录下。拷贝完成后的工程目录(以 V0.9 为例):3.添加用户 Key。在工程的“AndroidManifest.xml”文件如下代码中添加您的用户 Key。4.添限。在工程的“AndroidManifest.xml”文件中进行添加,请直接拷贝。| 25.clean 工程,结束配置。| 33街景显示街景图像通过一个 AMapPanoramaView(全景图视图)对象作为容器来显示。AMapPanoram
6、aView(全景图视图)对象包括 AMapPanoramaCamera 对象来控制全景图方向、仰俯角、缩放级别,AMapPanoramaListener 对象来街景图像的事件,AMapPanorama 显示全景图的基本信息。AMapPanoramaView 类自动处理以下操作:连接到街景服务街景数据在设备屏幕上显示街景显示各种控件,如方向控件支持各种视区域操作,如方向、俯仰角使用 AMapPanoramaView 类,必须重载 Activity 生命周期的所有方法,有 onDestroy(), onResume(),onPause(),onStop()。全景图的基本信息AMapPanorama
7、(全景图信息)对象用于定义全景图的基本信息,包括:ID位置(通过指定坐标)坐标显示特定位置的全景地图显示设置可以设置街景的街道名称、导航线是否可见,是否可以缩放或移动街景。示例布局文件(res/layout/ activity_main.xml)程序代码(com.amap.panorama.MainActivity.java):| 4public class MainActivity extendivity private sic final_ITEM_COUNTER = 10;| 5/一个 AMapPanoramaView 对象private AMapPanoramaView mPanorm
8、aView; public sic Context context;public double lat = 39.88389419203265; public double lon = 116.4207155882398;/必须重写Overrideprotected void onCreate(Bundle savedInstane) super.onCreate(savedInstane); this.requestWindowFeature(Window.FEATURE_NO_TITLE);this.getWindow().setFlags(WindowManager.LayoutPara
9、ms.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);context = this.getBaseContext(); setContentView(R.layout.activity_main);/在指定页面 id 显示街景试图mPanormaView = (AMapPanoramaView) this.findViewById(R.id.panoramaViewGroup);/在指定点添加街景视图mPanormaView.initData(new Lng(39.88389419203205, 116.42071558
10、82398), 64);Overrideprotected void onPause() super.onPause(); mPanormaView.onPause();/必须重写 OverridepubliconKeyDown(keyCode, KeyEvent event) if (keyCode = KeyEvent.KEYCODE_BACK) mPanormaView.onKeyBack();return super.onKeyDown(keyCode, event);/必须重写Overrideprotected void onResume() super.onResume();街景的
11、显示效果如下图所示:| 6mPanormaView.onResume();/必须重写Overrideprotected void onStop() super.onStop();/必须重写Overridepublic void onDestroy() super.onDestroy(); mPanormaView.onDestroy(); mPanormaView.finalize();4可视区域操作在街景时,可以假设屏幕为街景的镜头,通过调整镜头来展示街景不同的区域。AMapPanoramaCamera 是用来控制街景可视区域镜头视角的对象,包含以下属性:方向俯仰角缩放级别在初始化街景地图时
12、,通过 AMapPanoramaView 对象的 camera 字段,可以指定一个AMapPanoramaCamera 对象来控制全景图的可视区域。在街景地图初始化完成后,在调整可视区域的方向、俯仰角或缩放级别后,需要通过设置AMapPanoramaView 对象的 moveCamera 方法更新可视区域。方向镜头可以在街景地图水平方向 360 度旋转,在不同的水平旋转角度有不同的街景内容,调整角度能够看到此地点不同的街景内容。方向即指镜头在水平方向的旋转角度。通过 AMapPanoramaCamera 对象的 heading 字段可以设置changeHeading(float mHeadin
13、g)方法用于改变全景图的方向,范围为 0 到 360 度。方向。俯仰角俯仰角是指镜头在垂直方向的旋转角度,通过调整俯仰角可以在垂直方向不同的角度内容。通过 AMapPanoramaCamera 对象的 pitch 字段可以设置俯仰角,范围为 11 到 90 度。不同的街景changtch(float mPitch)方法用于改变全景图的俯仰角。缩放级别缩放级别是指镜头在屏幕上的可视区域范围,范围为 40-75 度,40 度表示镜头夹角为 40 度时在手机屏幕上的可视区域范围,75 度表示镜头夹角为 75 度时在屏幕上的可视区域范围。通过 AMapPanoramaCamera 对象的 zoom 字
14、段可以设置缩放级别 changeZoom(float mZoom)方法用于改变全景图的缩放级别。示例以下代码示范了如何调整并移动可视区域。| 7AMapPanoramaCamera camera = view.getCamera(); camera.changeHeading(30);| 8mPanormaView.moveCamera(camera);5手势控制街景全景图支持方向手势缩放手势势操作有:缩放手势改变可视区域的缩放级别,地图可以响应势如下:双击街景视图可以使街景视图放大一级两个手指捏/拉伸通过 AMapPanoramaView 对象的 setZoomGesturesEnabled
15、(否可用。设置为 true 表示缩放手势可用,false 表示禁用缩放手势。示例代码:)方法可以设置缩放手势是方向手势街景视图的方向包括俯仰角和方向,方向手势如下:在屏幕上下滑动改变街景视图的俯仰角在屏幕左右滑动改变街景视图的方向通过AMapPanoramaView 对象的setOrienionGesturesEnabled(否可用。设置为 true 表示方向手势可用,false 表示禁用方向手势。示例代码:)方法可以方向手势是| 9mPanormaView.setOrienionGesturesEnabled(true);mPanormaView.setZoomGesturesEnabled
16、(true);6街景控件街景 SDK 提供一些内置的 UI 控件:导航线(南北箭头),街道名称。导航线街景 SDK 提供内置的导航线,显示在街景的正下方来控制街景的移动方向。默认是可见的。通过 AMapPanoramaView 的 setNavigationLinksHiddenEnabled() 方法来控制导航线(南北箭头)的可见性。显示效果图如下:示例代码如下:| 10/导航线隐藏 mPanormaView.setStreetNamesHiddenEnabled(true);/导航线显示 mPanormaView.setStreetNamesHiddenEnabled(false);街道名
17、称街景 SDK 提供各街道名称的显示和隐藏。默认是可见的。通过 AMapPanoramaView 的 setStreetNamesHiddenEnabled() 方法来控制街道名称的可见性。显示效果图如下:示例代码如下:7街景标注开发者可以在街景视图的指定点添加标注,标注拥有自己的地理坐标。街景标注模拟真实的人眼与物体的关系,当镜头离标注越近标注显示越大,当镜头离标注越远标注显示越小。| 11/街道名称隐藏 mPanormaView.setStreetNamesHiddenEnabled(true);/街道名称显示 mPanormaView.setStreetNamesHiddenEnable
18、d(false);AMapPanoramaMarker 是用来添加街景标注的对象。通过指定ID 来设置其唯一标识。添加街景标注如下图所示,左边为添加 marker,右边为 marker 删除。点来添加标注,设置标注的添加和删除街景标注构造标注:AMapPanoramaMarker 类是用来添加标注的对象街景标注的 ID 是其唯一标识。添加: AMapPanoramaView 的 addMarker()方法来添加标注。删除:AMapPanoramaView 的 clear()方法来删除所有标注,AMapPanoramaMarker 的 remove()方法用来删除单个标注。示例以下示例向您展示如
19、何定义一个街景标记并添加到街景,以及如何删除标注。| 12/初始化 m1 标注对象AMapPanoramaMarker m1 = new AMapPanoramaMarker(new Lng(| 1339.88459419203205, 116.4207155882398);/设置标注 ID m1.setId(m1);/在地图上添加标注 mPanormaView.addMarker(m1);/删除添加的所有标注 mPanormaView.clear();8事件响应通过 AMapPanoramaView 的 setAMapPanoramaListener() 方法来对街景地图进行事件过重写各个事件函数来处理当操作街景时的事件响应结果。通点击街景事件onPanoramaViewClick() 为点击街景时的函数。如果用户点击街景上的某个点,会调用此方法。长按街景事件onPanoramaViewLongClick()为长按街景时的函数。如果用户长按街景上的某个点,会调用此
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 外科主治医师专业模拟考试题(含答案解析)
- 卫生系统招聘考试(护理学)历年参考题库含答案详解(5套卷)
- 专题08 有理数的计算题(50题)(解析版)
- 广东省云浮市2026届高三最后一卷生物试卷含解析
- 小学美术教资面试色彩搭配专项题库及答案
- 项目二 任务二 动力电池管理系统
- B2驾驶证科目二考试试题及详细答案
- AOPA无人机考试题库(完整版含答案·考场真题版)
- 2026年数字化技术继续教育公需课题库及答案
- 2026年小学毕业调研试卷及答案
- 2026陕西榆林能源集团有限公司招聘(245人)笔试备考试题及答案详解
- 2026年辽宁省大连市辅警招聘试题及答案
- 人教版生物七年级上册1.2.2《植物细胞》-教学课件(共26张)
- GB/T 24914-2026非公路用旅游观光车辆用电池
- 气在线监测运维作业指导书
- 2026年青海省安全员B证考试题库及答案
- 2027届拉萨市重点中学化学九上期中统考模拟试题含解析
- SYT 5659-2025 钻井液用解卡剂标准立项发展报告
- 北京建设围挡施工方案(3篇)
- DB 61∕T 5121-2025 建筑工程资料管理规程
- SYT 6649-2025《油气管道管体缺陷修复技术规范》
评论
0/150
提交评论