Android之旅十八 百度地图环境搭建

在android中使用百度地图,我们可以先看看百度地图相应的SDK信息:http://developer.baidu.com/map/index.php?title=androidsdk,它里面基本上有关于android中的所有配置、api调用等操作方法,下面我们来看看百度地图在android中环境的搭建步骤:我们这里使用的百度地图版本为

Android SDK v3.1.1,版本不同,里面的API可能不一样,所以希望大家能够注意!!

一、申请密钥,无论是开发谷歌地图还是百度地图我们都需要申请密钥,当然申请之前我们还得注册成为百度的用户,否则是申请不到的,密钥的android版申请步骤:http://developer.baidu.com/map/index.php?title=androidsdk/guide/key,注意里面配置的安全码不能随便填写,否则会出现看不到地图等一系列的问题,安全码必须是全码的组成规则为:Android签名证书的sha1值+“;”+packagename(即:数字签名+分号+包名),关于sha1签名证书的值的获取,里面有相应的操作方法,填写完相应信息后,就会出现一个相应的24位的ak,就是我们的密钥,我们得把它记录下来;

二、下载android版百度地图SDK:http://developer.baidu.com/map/index.php?title=androidsdk/sdkandev-download,建议下载全部,里面包含开发包、文档和示例,也可以在我的博客资源中进行下载:http://download.csdn.net/detail/harderxin/8002031

三、新建android工程项目,将下载的libs包文件拷入到项目中,其中baidumapapi_v3_1_1.jar表示开发百度地图必须使用的包,而liblocSDK3.so和locSDK_3.1.jar为百度定位SDK所使用资源,开发者可根据实际需求自行添加。将其jar包引入到项目工程中,拷贝后的项目包如下图:

四、打开我们项目的AndroidMainifest.xml文件,在Application下面将我们在上面得到的密钥放入到meta信息中:

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

在AndroidMainifest.xml中添加百度相关权限:

	<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" />

添加对屏幕的支持:

  <supports-screens
        android:anyDensity="true"
        android:largeScreens="true"
        android:normalScreens="false"
        android:resizeable="true"
        android:smallScreens="true" />

五、在main.xml中添加百度地图显示控件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

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

</LinearLayout>

六、在MainActivity中引入百度地图API,编写相关代码:

package com.xin.activity;

import android.app.Activity;
import android.os.Bundle;

import com.baidu.mapapi.SDKInitializer;
import com.baidu.mapapi.map.BaiduMap;
import com.baidu.mapapi.map.MapView;

public class MainActivity extends Activity {
	private MapView mMapView = null;
	private BaiduMap baiduMap;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		// 在使用SDK各组件之前初始化context信息,传入ApplicationContext
		// 注意该方法要再setContentView方法之前实现
		SDKInitializer.initialize(getApplicationContext());
		setContentView(R.layout.main);
		// 获取地图控件引用
		mMapView = (MapView) findViewById(R.id.bmapView);
		baiduMap=mMapView.getMap();
		//设置地图类型为普通地图
		//baiduMap.setMapType(BaiduMap.MAP_TYPE_NORMAL);
		//设置地图类型为卫星地图
		//baiduMap.setMapType(BaiduMap.MAP_TYPE_SATELLITE);
		//开启交通图
		baiduMap.setTrafficEnabled(true);
	}

	@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();
	}
<span style="font-size:18px;">}</span>

七、运行项目,在我们的模拟器上出现地图显示,即环境搭建成功!!

我在代码中控制了显示交通地图:baiduMap.setTrafficEnabled(true);所以会出现这样的效果,百度里面提供了很多api供我们参考使用,例如标注、覆盖物、公交查询等信息,我们可以根据自己的需要来编写相关代码,这里的环境搭建只起到了一个抛砖引玉的作用,以后的拓展,还得根据项目需求自己去设计实现:

百度在线API:http://wiki.lbsyun.baidu.com/cms/androidsdk/doc/v3_1_1/

百度基础地图:http://developer.baidu.com/map/index.php?title=androidsdk/guide/basicmap

时间: 2024-11-20 00:49:03

Android之旅十八 百度地图环境搭建的相关文章

iOS第三方之百度地图环境搭建一

一.先按照官方注意事项修改Xcode环境 静态库中采用ObjectC++实现,因此需要您保证您工程中至少有一个.mm后缀的源文件(您可以将任意一个.m后缀的文件改名为.mm),或者在工程属性中指定编译方式,即将Xcode的Project -> Edit Active Target -> Build -> GCC4.2 - Language -> Compile Sources As设置为"Objective-C++" 如果您只在Xib文件中使用了BMKMapVi

Android开发之百度地图--环境搭建

这篇文章总结自极客学院张浩老师的android教学课程,在此对张浩老师和崔爽老师表示非常感谢. (一)基础知识 在申请百度地图开发密钥的时候需要用到数字签名证书的内容,所以这里先对此做一下介绍. (1)什么是数字签名证书(keystore) 数字签名是用来确立软件与软件作者之间的关系,Android系统要求所有的应用必须被证书进行签名之后才能进行安装. (2)为什么要对android应用进行数字签名 android安全机制限定 保证应用唯一性 利用基于签名的权限检查,你就可以在应用程序间以安全的

Android第十期 - 百度地图

已经把每个功能都独立出来了,idkey在百度云地图开发官网去自己申请就可以了 效果图如下: Android第十期 - 百度地图

01.(最新版)百度地图&#167;环境配置

转载请标明:http://blog.csdn.net/u012637501/article/details/45588377 一.Eclipse工程环境配置 1.下载SDK与申请Key 参见http://developer.baidu.com/map/index.php?title=androidsdk/guide/key.需要注意的是,在执行keytool命令出现命令不存在异常.keytool工具在JDK的bin文件夹下面,可以将bin目录的绝对路径添加到PATH环境变量中即可. 百度地图开发

Android Studio 项目中集成百度地图SDK报Native method not found: com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create:()I错误

Android Studio 项目中集成百度地图SDK报以下错误: 1 java.lang.UnsatisfiedLinkError: Native method not found: com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create)I 2 at com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create(Native Met

Android之旅十五 android中的网络操作

android中的网络操作和java里面没有什么区别,java里面的很多网络操作方法都可以搬到android中去使用,主要几个点: 1.post和get请求的区别,大家可以在网上查阅有关资料进行了解,get主要以向地址中拼接字符串参数发送到服务器,长度有限制,并且请求参数暴露在地址栏中,不怎么安全:post则主要是将请求参数转换为相应的http协议请求体发送到服务器,相比get方式,参数的长度没有限制,并且参数信息不会暴露给用户: 2.我们在java web里面通过浏览器以post方式发送数据,

Android之旅十六 android中各种资源的使用

android中各种资源的使用: 在android开发中,各种资源的合理使用应该在各自的xml中进行定义,以便重复使用; 字符串资源:strings.xml,xml中引用:@string/XXX,java代码中引用:R.string.XXX 样式资源:styles.xml,xml中引用:@style/XXX,java代码中引用:R.style.XXX 图片资源:colors.xml,xml中引用:@color/XXX,java代码中引用:R.color.XXX 尺寸资源:dimens.xml,x

Android基础入门教程——1.2 开发环境搭建

Android基础入门教程--1.2 开发环境搭建 现在主流的Android开发环境有: ①Eclipse + ADT + SDK ②Android Studio + SDK ③IntelliJ IDEA + SDK 现在国内大部分开发人员还是使用的Eclipse,而谷歌宣布不再更新ADT后,并且官网也去掉了集成Android开发环境的Eclipse下载链接,各种现象都表示开发者最后都终将过渡到Android Studio,当然这段过渡时间会很长,但如果你是刚学Android的话建议直接冲And

Android学习路线(一)开发环境搭建

工欲善其事,必先利其器. 回想我刚开始学习Android的时候,环境搭建真的是很头疼的一件事:找了好多博客,看了很多文章,费了九牛二虎之力才搭好环境.当时好想有个直接就能用的开发环境,赶紧开始编写Android App. 不过现在好啦,托Google的福,我们可以直接下载一个环境都配置好了的IDE,直接就能编写App了.当然,你得现有Java(jdk/jre)环境:还没有安装jdk的同学可以参考这篇文章:http://jingyan.baidu.com/article/6dad5075d1dc4