Android百度地图API-快速接入
2016-05-13 22:56
441 查看
在自己的项目中想使用地图功能,自己开发基本上是不可能的了,使用开源地图平台,质量好效率高开发快。开放地图平台有很多,Google,腾讯,高德,UCMap,百度等都有自己的地图系统。这里我就介绍下如何快速的接入百度地图SDK。
1,去官网,注册自己的app。http://lbsyun.baidu.com/
前期准备工作,向百度申请在APP使用百度地图。一般来说申请是非常容易通过的,基本不用等待的(其实就是在百度注册下自己的app)。
流程:注册(登录)百度账号–>进入控制台–>新建应用。
下面这条官方链接详细的说明上述三个步骤(新手一定要看!)
http://lbsyun.baidu.com/index.php?title=androidsdk/guide/key
申请完成后得到唯一有用的东西就是AK,这个在后期的编码部分中有非常重要的作用。AK和你的应用是直接绑定的,如果没AK或者AK错误,都会导致百度“不认账”,不给与在线的地图服务。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/30/4d92673f103e9759322c4790ed5f0c90)
2,在官网中下载对应版本的SDK。
百度地图提供的SDK分的很细致,自己可以根据自己的需求下载对应功能的SDK。推荐大家使用自定义下载,如果把不要的SDK都使用到app中会加大apk的大小以及对编译时间会有所影响(最坏的情况是加大了65K问题的出现)。当然如果app小全使用也没什么关系。下载开发包的同时把实例代码以及参考类下载也很有意义。实例代码中有AS版本与Eclipse版本的demo源码,非常好用。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/30/e532e41998b364e7993a9dba38997fb7)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/30/95ae9ab97f2cc34be6708f29ef401fc8)
3,引用SDK
在自己的开发环境中,搭建好SDK引用库。具体操作见官方文档。
http://lbsyun.baidu.com/index.php?title=androidsdk/guide/buildproject
Eclipse配置方法非常简单:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/30/fda8da0692de0dacdfa018647031bcf6)
4,编码使用
在经过了上述过程后,现在就可以轻松的使用baiduMapSDK了。几行代码在自己app中敲出地图。
GoGoGo!!!
4.1 在工程的Mainifsts文件下的application中添加开发密钥
添加权限
那么现在可以在你相应界面的布局文件中直接使用MapView这个控件了。
MapView可以显示地图,自动加载地图,可以在该地图控件上绘制你想要的任何东西,MapView自己写好了点击事件,长按事件,拖拽等手势事件的接口,只等你去使用了。
到目前为止距离显示地图只差一步:初始化baiduMapSDK
把人家的SDK拿过来了,在使用之前自然要唤醒它,在此之后它才能正常工作。
初始化 SDK:
编译,运行,打开网络,这时候你就会发现地图已经接入成功了!
对于地图的定位,图层展示等等更高级的使用请见下回分晓。
1,去官网,注册自己的app。http://lbsyun.baidu.com/
前期准备工作,向百度申请在APP使用百度地图。一般来说申请是非常容易通过的,基本不用等待的(其实就是在百度注册下自己的app)。
流程:注册(登录)百度账号–>进入控制台–>新建应用。
下面这条官方链接详细的说明上述三个步骤(新手一定要看!)
http://lbsyun.baidu.com/index.php?title=androidsdk/guide/key
申请完成后得到唯一有用的东西就是AK,这个在后期的编码部分中有非常重要的作用。AK和你的应用是直接绑定的,如果没AK或者AK错误,都会导致百度“不认账”,不给与在线的地图服务。
2,在官网中下载对应版本的SDK。
百度地图提供的SDK分的很细致,自己可以根据自己的需求下载对应功能的SDK。推荐大家使用自定义下载,如果把不要的SDK都使用到app中会加大apk的大小以及对编译时间会有所影响(最坏的情况是加大了65K问题的出现)。当然如果app小全使用也没什么关系。下载开发包的同时把实例代码以及参考类下载也很有意义。实例代码中有AS版本与Eclipse版本的demo源码,非常好用。
3,引用SDK
在自己的开发环境中,搭建好SDK引用库。具体操作见官方文档。
http://lbsyun.baidu.com/index.php?title=androidsdk/guide/buildproject
Eclipse配置方法非常简单:
4,编码使用
在经过了上述过程后,现在就可以轻松的使用baiduMapSDK了。几行代码在自己app中敲出地图。
GoGoGo!!!
4.1 在工程的Mainifsts文件下的application中添加开发密钥
<application> <meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="AK(这里就是开始申请到的AK)" /> <!--用别的包名申请的AK在本app中是不能使用的,一个AK对应一个应用--> </application>
添加权限
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" /> <uses-permission android:name="android.permission.WAKE_LOCK"/> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.GET_TASKS" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.WRITE_SETTINGS" />
那么现在可以在你相应界面的布局文件中直接使用MapView这个控件了。
MapView可以显示地图,自动加载地图,可以在该地图控件上绘制你想要的任何东西,MapView自己写好了点击事件,长按事件,拖拽等手势事件的接口,只等你去使用了。
<com.baidu.mapapi.map.MapView android:layout_width="match_parent" android:layout_height="match_parent" android:clickable="true" />
到目前为止距离显示地图只差一步:初始化baiduMapSDK
把人家的SDK拿过来了,在使用之前自然要唤醒它,在此之后它才能正常工作。
初始化 SDK:
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //在使用SDK各组件之前初始化context信息,传入ApplicationContext //注意该方法要再setContentView方法之前实现 SDKInitializer.initialize(getApplicationContext()); setContentView(R.layout.activity_main); } }
编译,运行,打开网络,这时候你就会发现地图已经接入成功了!
对于地图的定位,图层展示等等更高级的使用请见下回分晓。
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories