百度地图 Android SDK - Hello Baidu Map

如下内容主要向广大开发者介绍如何利用百度地图Android SDK来构建一个最基本的地图应用!

第一步,创建Android工程,将百度地图Android SDK的开发包导入到工程相应位置:

在工程里新建libs文件夹,将开发包里的baidumapapi_vX_X_X.jar拷贝到libs根目录下,将libBaiduMapSDK_vX_X_X.so拷贝到libs\armeabi目录下(官网demo里已有这两个文件,如果要集成到自己的工程里,就需要自己添加),拷贝完成后的工程目录如下图所示;

注:liblocSDK3.so和locSDK_3.1.jar为百度定位SDK所使用资源,开发者可根据实际需求自行添加。

第二步,在所建立的Android工程中添加相应的jar(add jar):

在工程属性->Java Build Path->Libraries中选择“Add External JARs”,选定baidumapapi_vX_X_X.jar,确定后返回。

通过以上两步操作后,您就可以正常使用百度地图SDK为您提供的全部功能了。

注意:由于adt插件升级,若您使用Eclipse adt 22的话,需要对开发环境进行相应的设置,方法如下:

1. 在Eclipse 中选中工程,右键选 Properties->Java Build Path->Order and Export 使 Android Private Libraries处于勾选状态;

2. Project -> clean-> clean all .

第三步,在工程的AndroidManifest文件中添加开发密钥:

核心代码如下,开发密钥的获取方式请参考博文:百度地图
Android SDK - 申请开发密钥

<application>
    <meta-data
        android:name="com.baidu.lbsapi.API_KEY"
        android:value="开发者 key" />
</application>

第四步,在工程的AndroidManifest文件中添加所需要的权限:

所需权限如下,添加在AndroidManifest文件中:

<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
<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.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

第五步,在XML布局文件中添加地图控件(MapView):

添加MapView控件如下:

<com.baidu.mapapi.map.MapView
    android:id="@+id/bmapView"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:clickable="true" />

第六步,在应用创建是初始化SDK:

注意:在SDK各功能组件使用之前都需要调用SDKInitializer.initialize(getApplicationContext());,因此我们建议该方法放在Application的初始化方法中。

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);
    }
}

第七步,创建地图activity文件,并管理其生命周期:

public class MainActivity extends Activity {
    MapView mMapView = null;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //在使用SDK各组件之前初始化context信息,传入ApplicationContext
        //注意该方法要再setContentView方法之前实现
        SDKInitializer.initialize(getApplicationContext());
        setContentView(R.layout.activity_main);
        //获取地图控件引用
        mMapView = (MapView) findViewById(R.id.bmapView);
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
        //在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理
        mMapView.onDestroy();
    }
    @Override
    protected void onResume() {
        super.onResume();
        //在activity执行onResume时执行mMapView. onResume (),实现地图生命周期管理
        mMapView.onResume();
        }
    @Override
    protected void onPause() {
        super.onPause();
        //在activity执行onPause时执行mMapView. onPause (),实现地图生命周期管理
        mMapView.onPause();
        }
    }

第八步,运行APP,显示基础地图:

时间: 2024-08-08 17:04:25

百度地图 Android SDK - Hello Baidu Map的相关文章

百度地图 Android SDK - 新的版本号(v3.2.0)正式上线

百度地图 Android SDK v3.2.0 在版本号 2014 年 11 月 07 日本正式推出工作完成! watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2FsbG1lc2Vu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" > 在这个版本号中.我们主要为广大开发人员开放了百度城市热力图层,帮助开发人员构建形式更加丰富的地图应用! 那么这里可能

百度地图 Android SDK - 检索功能使用的简单示例

百度地图 SDK 不仅为广大开发者提供了炫酷的地图展示效果.丰富的覆盖物图层,更为广大开发者提供了多种 LBS 检索的能力.通过这些接口,开发者可以轻松的访问百度的 LBS 数据,丰富自己的移动端地图应用. 目前百度地图 SDK 为开发者提供的检索服务有: POI 检索:可以检索百度 POI 数据信息: 线路规划:利用百度的引擎帮助开发者规划线路: 在线建议检索.短链接分享.地理编码等等.... 本文将以一个很简单的 POI 城市内检索为例,像广大开发者介绍接口的使用. 第一步,选择并下载 SD

Android 关于百度地图Android SDK几处修正使用说明(非官方)

本篇主要是因为最近在学习使用百度地图,发现了一些问题,跟大伙分享一下. 1.根据android sdk开发指南中"Hello World"的例子,构建一个基础的地图页面,如果大家完全按照示例代码中所写的那样,是不会执行成功的,会有以下问题的错误提示"java.lang.RuntimeException: Unable to instantiate activity ComponentInfo" 这个问题出现的原因是 在第二步,配置Activity部分,android

百度地图 Android SDK - 新版本(v3.2.0)正式上线

百度地图 Android SDK v3.2.0 版本于 2014 年 11 月 07 日完成正式上线工作! 在这个版本中,我们主要为广大开发者开放了百度城市热力图层,帮助开发者构建形式更加丰富的地图应用! 那么这里可能一些细心的开发者就会有疑问了,曾经的 v3.1.0 版本貌似就有一个什么热力图,这两个之间是怎么回事,有什么区别呢?别急,听我慢慢道来: v3.1.0 版本所开放的是热力图的绘制能力,说白了就是你来给我们提供数据,我们来帮助您实现本地的一个热力图绘制,最主要的前提是由开发者传入位置

百度地图 Android SDK - 标注(Marker)的基本使用

标注(Marker)是开发者最常使用的地图覆盖物志一,今天就来向大家介绍一些标注(Marker)的最基本使用方法! 实现目标: 1.构建基础地图页面: 2.在地图的中心点处添加 Marker: 3.实现 Marker 的点击事件响应: 4.实现 Marker 的添加和灵活删除: 为了实现以上目标,我们会分成以下若干步骤来进行. 第一步.创建工程,导入百度地图 Android SDK: 具体创建工程的方式(略).本示例主要是为了实现地图及相关的覆盖物功能,因此这里我只使用 SDK 开发资源下载平台

百度地图 Android SDK - 坐标转换方法

百度地图 Android SDK 或者 iOS SDK 或者各种各样的 API 工具产品,都使用的是百度自己经过加密的坐标体系. 众多开发者在使用过程中,位置点都是通过 GPS 或者其他途径获取的,所以与百度地图所使用的坐标系存在差异. 开发者在将这些空间位置信息运用到地图地图上得时候,需要进行响应的纠偏(坐标转换),Android SDK 为广大开发者早已开放了响应的坐标转换方法, 开发者只需要短短的几行代码就可以实现相应的坐标转换操作了. 具体方法如下: // 将google地图.soso地

分享:百度地图Android SDK开发指南

最新的百度地图(v3.2)下载包中居然没有开发指南,自己整理了一下网页版的百度地图Android SDK开发指南,分享给和自己一样需要Demo的学生党.下载链接: http://pan.baidu.com/s/1jGqYF5c 密码: wpf9.

百度地图 Android SDK - 个性化地图

什么是百度个性化地图Android SDK? 百度个性化地图Android SDK是一套基于Android 2.2及以上版本设备的应用程序接口,您可以通过该套接口实现基本的地图功能,并且可以定制地图样式,实现个性化地图. 该接口提供以下功能: 1.基本地图:提供地图(2D.3D)的展示和缩放.平移.旋转.改变视角等地图操作: 2.个性化地图:可以更改地图样式,让您的地图与众不同,实现个性化定制: 3.覆盖物:提供常见地图覆盖物(自定义标注.几何图形等),满足开发者的各种需求: 4.坐标映射:提供

百度地图 Android SDK - 申请开发密钥

在使用百度LBS开放平台为广大开发者提供的各种服务之前,都需要一个开发密钥(AK / Key),用于标识自己的完整合法性,同时也有效的保护了自身的使用安全.下面主要跟大家讲一下Android移动端的开发密钥申请等问题. 百度LBS开放平台的官方地址为:http://developer.baidu.com/map 开发密钥,即API控制台的地址为:http://lbsyun.baidu.com/apiconsole/key 首选对百度LBS开放平台Android端的产品做个简单的介绍: Andro