Android百度地图API-快速接入

在自己的项目中想使用地图功能,自己开发基本上是不可能的了,使用开源地图平台,质量好效率高开发快。开放地图平台有很多,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错误,都会导致百度“不认账”,不给与在线的地图服务。
这里写图片描述
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);  
    }  
}

编译,运行,打开网络,这时候你就会发现地图已经接入成功了!
对于地图的定位,图层展示等等更高级的使用请见下回分晓。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值