Baidu Map开发示例

1.获取SHA1码

在Eclipse中点击“Windows”----->“Preferences” ----->“Android” ----->“Build”如下图:

打开“Win+R”输入cmd,输入“keytool –list –v –keystore <Android keystore的存储位置>”,Keystore密码默认是:Android,获取认证指纹,如下图:

2.获取API Key

在获取API Key之前自己必须要注册一个百度账号,申请API Key的地址http://lbsyun.baidu.com/apiconsole/key,得到网页如下图:


点击左边“我的服务”选项,打开Android地图SDK,如下图:


点击左边“我的应用”选项,单击“创建应用”,应用类型选择“for mobil”,如下图:



需要填写应用名称,安全码填写格式:SHA1码;应用的报名,如:0E:DE:CC:5D:93:7F:6D:B3:CF:F9:A9:D6:7C:78:0F:92:DE:AB:28:87;com.example.baidu,如下图:

点击“确认”按钮即可获得API Key,如下图:

3.下载Baidu Map API Library

要在Android应用中使用百度地图API,就需要在工程中引用百度地图API开发包,下载地址http://developer.baidu.com/map/sdkandev-download.htm。点击“一键下载”按钮即可,如下图:

然后解压下载的文件,把BaiduMap_AndroidSDK_v3.1.0_Lib中的文件拷贝到项目的lib目录下,如下图:

4.编写代码

Baidu Map开发有示例可以参考,在http://developer.baidu.com/map/sdkandev-download.htm有一个简单的Hello BaiduMap的示例。简单介绍下,第一步在AndroidManifest中添加开发密钥、所需权限等信息;

(1) 在<application../>中添加开发密钥

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

(2) 添加所需权限

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

(3) 在布局xml文件中添加地图控件

<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:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/map_view" 
android:clickable="true"/>
</LinearLayout>

(4) 在应用程序创建时初始化 SDK引用的Context 全局变量。

注意:在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); 
} 
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

原文地址:https://www.cnblogs.com/GatsbyNewton/p/4776688.html