2022年Android百度地图API开发[归 .pdf

上传人:C****o 文档编号:39678649 上传时间:2022-09-07 格式:PDF 页数:10 大小:1.29MB
返回 下载 相关 举报
2022年Android百度地图API开发[归 .pdf_第1页
第1页 / 共10页
2022年Android百度地图API开发[归 .pdf_第2页
第2页 / 共10页
点击查看更多>>
资源描述

《2022年Android百度地图API开发[归 .pdf》由会员分享,可在线阅读,更多相关《2022年Android百度地图API开发[归 .pdf(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、最近自己想研究下地图,本来想研究google Map,但是申请API key比较坑爹,于是从百度地图入手,其实他们的用法都差不多,本篇文章就带领大家在自己的Android项目中加入百度地图的功能,接下来我会写一系列关于百度地图的文章,欢迎大家到时候关注!一 申请 API key在使用百度地图之前,我们必须去申请一个百度地图的API key,申请地址http:/ 创建密钥,系统将为我们自动生成密钥,当然我们在使用密钥之前还必须配置,点击 设置 如下图名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 10 页 -Key type 选择“for mobile”,安全码是 Android签

2、名证书的证书指纹(SHA1)值+“;”+你的应用程序包名,所以当你配置好了API key 你不能随意更换应用程序的包名,如果更换了包名我们需要重新配置API key,接下来我们来介绍怎么获取数字签名我们知道我们开发的Android程序是需要给他签名的,如果没有签名是不允许被安装到手机或者模拟器的,那么你会有疑问,我平常开发的应用确实没签名,怎么能在模拟器或者手机上直接运行呢,其实 ADT 会自动的使用debug 密钥为应用程序签名,当然你也可以自己创建一个属于你自己的密钥,直接用Eclipse可视化创建就行了,很方便的,这里我就不介绍了这里我们用debug.keystore来生成 Androi

3、d签名证书的证书指纹(SHA1)值,可以在eclipse中直接查看:winows-preferance-android-build。如下图示:然后我们使用keytool工具来获取签名证书的sha1 值,在 DOS 输入 keytool-list-keystore C:Usersbds.androiddebug.keystore红色部分为debug.keystore的路径,接下来会要你输入输入密钥库口令,默认输入“android”,这样子我们就能获取证书指纹(SHA1),如下图名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 10 页 -红色框框里面的东西就是我们需要的Android

4、签名证书的证书指纹(SHA1)值,然后我们复制出来,输入到API key的安全码输入框里面,再用分号隔开加上你的应用程序包名,如 02:5C:80:25:B2:8F:6F:60:54:B9:F4:B2:EF:94:FF:EE:CC:3C:5A:29;com.example.baidumapdemo 这样子我们就配置好了API key二、下载百度地图API库要在 Android应用中使用百度地图API,就需要在工程中引用百度地图API 开发包,下载地址http:/ Android SDKv2.1.3 lib库就行了三、在 Android项目中引用百度地图新建 Android项目 BaiduMap

5、Demo,然后将百度地图API 库加入工程,如下图名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 10 页 -在布局文件中添加百度地图控件,htmlview plaincopy1.2.6.7.12.13.Activity界面代码,注释的很详细,相信你看得懂javaview plaincopy1.package com.example.baidumapdemo;名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 10 页 -2.3.import android.app.Activity;4.import android.graphics.Bitmap;5.import a

6、ndroid.os.Bundle;6.import android.widget.Toast;7.8.import com.baidu.mapapi.BMapManager;9.import com.baidu.mapapi.MKGeneralListener;10.import com.baidu.mapapi.map.MKEvent;11.import com.baidu.mapapi.map.MKMapViewListener;12.import com.baidu.mapapi.map.MapController;13.import com.baidu.mapapi.map.MapPo

7、i;14.import com.baidu.mapapi.map.MapView;15.import api.basestruct.GeoPoint;16.17.publicclass MainActivity extends Activity 18.private Toast mToast;19.private BMapManager mBMapManager;20./*21.*MapView 是地图主控件22.*/23.private MapView mMapView=null;24./*25.*用 MapController完成地图控制26.*/27.private MapControl

8、ler mMapController=null;28./*29.*MKMapViewListener 用于处理地图事件回调30.*/31.MKMapViewListener mMapListener=null;32.33.Override34.protectedvoid onCreate(Bundle savedInstanceState)35.super.onCreate(savedInstanceState);36./*37.*使用地图sdk 前需先初始化BMapManager,这个必须在setContentView()先初始化38.*/39.mBMapManager=new BMapMa

9、nager(this);40.41./第一个参数是API key,42./第二个参数是常用事件监听,用来处理通常的网络错误,授权验证错误等,你也可以不添加这个回调接口43.mBMapManager.init(7ae13368159d6a513eaa7a17b9413b4b,new MKGeneralListener()名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 10 页 -44.45./授权错误的时候调用的回调函数46.Override47.publicvoid onGetPermissionState(int iError)48.if (iError=MKEvent.ERR

10、OR_PERMISSION_DENIED)49.showToast(API KEY错误,请检查!);50.51.52.53./一些网络状态的错误处理回调函数54.Override55.publicvoid onGetNetworkState(int iError)56.if (iError=MKEvent.ERROR_NETWORK_CONNECT)57.Toast.makeText(getApplication(),您的网络出错啦!,Toast.LENGTH_LONG).show();58.59.60.);61.62.63.setContentView(R.layout.activity_m

11、ain);64.65.mMapView=(MapView)findViewById(R.id.bmapView);66.67./*68.*获取地图控制器69.*/70.mMapController=mMapView.getController();71./*72.*设置地图是否响应点击事件 .73.*/74.mMapController.enableClick(true);75./*76.*设置地图缩放级别77.*/78.mMapController.setZoom(12);79.80./*81.*显示内置缩放控件82.*/83.mMapView.setBuiltInZoomControls(

12、true);84.85./*86.*保存精度和纬度的类,名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 10 页 -87.*/88.GeoPoint p=new GeoPoint(int)(22.547923*1E6),(int)(114.067368*1E6);89./设置 p 地方为中心点90.mMapController.setCenter(p);91.mMapView.regMapViewListener(mBMapManager,new MKMapViewListener()92.93./*94.*地图移动完成时会回调此接口方法95.*/96.Override97.pu

13、blicvoid onMapMoveFinish()98.showToast(地图移动完毕!);99.100.101./*102.*地图加载完毕回调此接口方法103.*/104.Override105.publicvoid onMapLoadFinish()106.showToast(地图载入完毕!);107.108.109./*110.*地图完成带动画的操作(如:animationTo())后,此回调被触发111.*/112.Override113.publicvoid onMapAnimationFinish()114.115.116.117./*118.*当调用过 mMapView.ge

14、tCurrentMap()后,此回调会被触发119.*可在此保存截图至存储设备120.*/121.Override122.publicvoid onGetCurrentMap(Bitmap arg0)123.124.125.126./*127.*点击地图上被标记的点回调此方法128.*129.*/名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 10 页 -130.Override131.publicvoid onClickMapPoi(MapPoi arg0)132.if (arg0!=null)133.showToast(arg0.strText);134.135.136.);

15、137.138.139.140.141.Override142.protectedvoid onResume()143./MapView的生命周期与Activity同步,当activity挂起时需调用MapView.onPause()144.mMapView.onResume();145.super.onResume();146.147.148.149.150.Override151.protectedvoid onPause()152./MapView的生命周期与Activity同步,当activity挂起时需调用MapView.onPause()153.mMapView.onPause()

16、;154.super.onPause();155.156.157.Override158.protectedvoid onDestroy()159./MapView的生命周期与Activity同步,当activity销毁时需调用MapView.destroy()160.mMapView.destroy();161.162./退出应用调用BMapManager 的 destroy()方法163.if(mBMapManager!=null)164.mBMapManager.destroy();165.mBMapManager=null;166.167.168.super.onDestroy();1

17、69.170.名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 10 页 -171.172.173./*174.*显示 Toast消息175.*param msg 176.*/177.privatevoid showToast(String msg)178.if(mToast=null)179.mToast=Toast.makeText(this,msg,Toast.LENGTH_SHORT);180.else 181.mToast.setText(msg);182.mToast.setDuration(Toast.LENGTH_SHORT);183.184.mToast.show

18、();185.186.187.188.1.BMapManager是地图的引擎类,这个必须在setContentView方法之前被实例化,我们需要使用其方法init(String strKey,MKGeneralListener listener)来加入 API key,MKGeneralListener 该接口返回网络状态,授权验证等结果,我们需要实现该接口以处理相应事件2.MapView就是我们的地图控件了,MapView有和 Activity同步的生命周期,例如onResume(),onPause(),onRestoreInstanceState(Bundle state),destroy

19、()等,我们可以通过getController()方法获取地图控制器MapController,这个对象可用于控制和驱动平移和缩放等3.MapView有两个接口可以注册,分别是 MKMapTouchListener(地图点击事件监听器),MKMapViewListener(地图监听器)上面的Demo 我给 MapView注册了MKMapViewListener,也简单实现了里面的几个方法,接下来我会带着大家详细的了解这里面的方法,希望大家到时候关注我的博客当然,我们在程序运行之前,还必须加入相对于的权限htmlview plaincopy1.名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 10 页 -2.3.4.5.6.7.运行结果好了,结束了.此篇文章是转载的csdn的一篇博客,谢谢原博主吧名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 10 页 -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁