使用百度地图API进行Android地图应用开发(Eclipse)

        随着基于位置的服务的兴起,地图类App呈现爆发趋势。随着而来的是地图供应商开放大量的API,供开发者开发基于PC或者移动端的应用程序。现在我们研究使用百度地图SDK进行Android项目的开发。本文讨论如何导入百度地图SDK。主要分为服务器端配置和客户端配置。

(1)首先要有一个百度账号,账号可以去百度官网申请,然后登陆:http://developer.baidu.com/map/index.php?title=%E9%A6%96%E9%A1%B5   。使用自己的账号密码登录。该网站就是百度提供LBS服务的网站。


(2)在Android开发中点击“SDK下载”,下载地图开发需要的SDK或者Demo。Demo中百度为我们提供了功能丰富的代码示例。大家可以根据需求下载需要的SDK。


(3)下载完成后,会有多个jar包和一个armabi文件夹,把jar包和armabi文件夹复制到Eclipse工程目录下的libs文件夹下。如图:




(5)Eclipse打开Windows-->Preferences-->Android-->Build,获取右侧的SHA1 fingerprint值:“3B:BF:6C:48:0B:EE:79。。。。。”,以及记录自己应用程序的包名,如本文使用com.example.mapdemo.

.


.


(6)来到刚才的百度地图API网站,点击右上角的“API控制台”,点击“创建应用”,新建一个应用,配置参数如下,其中最关键的安全码为:SHA1;包名    。中间是一个英文状态下的分号。如:3B:BF:6C:48:0B:EE:79。。。。。;com.example.mapdemo.   应用类型选择Android SDK,点击“提交”。这一步非常重要,很多地图不能显示的情况,都是因为这一步有问题导致的。在服务器上创建的一个应用和你Eclipse中的一个项目一一对应,注意不是一个一对多或者多对一的关系,所以安全码是非常重要的。


(7)提交以后,记录访问应用AK,这个也就是API key.之后在代码中会用到,作为访问服务器的钥匙。


(8)在百度服务器端的配置已经全部完成,下面开始写代码,在AndroidMenifest.xml中添加:

    <application
//自动生成代码
        <meta-data
            android:name="com.baidu.lbsapi.API_KEY"
            android:value="这里加入上方的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" />

(9)在布局文件中添加地图控件:

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

(10)在MainActivity.java中添加代码:

public class MainActivity extends Activity {

	MapView mMapView = null;// 用于显示地图的控件;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		SDKInitializer.initialize(getApplicationContext());// 初始化地图SDK,注意一定要写在 setContentView(R.layout.activity_main);代码前;
		setContentView(R.layout.activity_main);
		mMapView = (MapView) findViewById(R.id.bmapView);// 绑定控件;
	}

	@Override
	protected void onDestroy() {// 管理地图的生命周期:销毁
		super.onDestroy();
		mMapView.onDestroy();
	}

	@Override
	protected void onResume() {// 显示;
		super.onResume();
		mMapView.onResume();
	}

	@Override
	protected void onPause() {// 暂停;
		super.onPause();
		mMapView.onPause();
	}

}

(11)编写少量代码后,运行程序,界面上就可以显示地图了,项目成功导入百度地图SDK,有了这个基础后,就可以开发更加复杂的基于地图的App了。


         本文参考百度地图开发文档:http://developer.baidu.com/map/index.php?title=androidsdk/guide/hellobaidumap


  • 4
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
要在 Android Eclipse 中搭建百度地图,需要执行以下步骤: 1. 在百度开发者平台中创建应用并获取 API Key。 2. 将百度地图 SDK 导入到 Eclipse 项目中。 3. 在 AndroidManifest.xml 文件中添加必要的权限和 SDK Key。 4. 在布局文件中添加 MapView 控件以显示地图。 5. 在 Java 代码中使用 BaiduMap 对象来控制地图的显示和交互。 以下是一个简单的示例: 1. 在百度开发者平台中创建应用并获取 API Key。 首先,您需要在百度开发者平台中创建一个应用并获取 API Key。请参考百度地图 SDK 文档中的说明。获取 API Key 后,将其保存在一个文本文件中备用。 2. 将百度地图 SDK 导入到 Eclipse 项目中。 下载最新版本的百度地图 SDK,解压缩后将其导入到 Eclipse 项目中。可以通过选择 File > Import > Android > Existing Android Code into Workspace,在弹出的对话框中选择 SDK 的路径,然后点击 Finish,将 SDK 导入到 Eclipse 项目中。 3. 在 AndroidManifest.xml 文件中添加必要的权限和 SDK Key。 打开 AndroidManifest.xml 文件,添加必要的权限和 SDK Key。以下是一个示例: ```xml <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="@string/baidu_map_api_key" /> ``` 其中,@string/baidu_map_api_key 是您在第一步中获取的 API Key。 4. 在布局文件中添加 MapView 控件以显示地图。 在您的布局文件中添加一个 MapView 控件,用于显示地图。以下是一个示例: ```xml <com.baidu.mapapi.map.MapView android:id="@+id/bmapView" android:layout_width="match_parent" android:layout_height="match_parent" /> ``` 5. 在 Java 代码中使用 BaiduMap 对象来控制地图的显示和交互。 在您的 Java 代码中,使用 BaiduMap 对象来控制地图的显示和交互。以下是一个示例: ```java public class MainActivity extends Activity { private MapView mMapView = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 获取地图控件引用 mMapView = (MapView) findViewById(R.id.bmapView); // 获取 BaiduMap 对象 BaiduMap baiduMap = mMapView.getMap(); // 移动地图到指定位置 LatLng center = new LatLng(39.915071, 116.403907); MapStatus.Builder builder = new MapStatus.Builder(); builder.target(center).zoom(18.0f); baiduMap.animateMapStatus(MapStatusUpdateFactory.newMapStatus(builder.build())); } @Override protected void onResume() { super.onResume(); // 在 activity 执行 onResume 时必须调用 MapView 的 onResume 方法 mMapView.onResume(); } @Override protected void onPause() { super.onPause(); // 在 activity 执行 onPause 时必须调用 MapView 的 onPause 方法 mMapView.onPause(); } @Override protected void onDestroy() { super.onDestroy(); // 在 activity 执行 onDestroy 时必须调用 MapView 的 onDestroy 方法 mMapView.onDestroy(); } } ``` 这样,在运行应用时,您应该能够看到一个显示百度地图的界面。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值