百度地图API-入门篇

来源:互联网 发布:2015年美国进出口数据 编辑:程序博客网 时间:2024/05/19 20:59

什么是百度地图API?

  百度地图移动版API(Android)是一套基于Android设备的应用程序接口,通过该接口,可以轻松访问百度服务和数据,构建功能丰富、交互性强的地图应用程序。

  百度地图移动版API不仅包含构建地图的基本接口,还提供了本地搜索、路线规划、地图定位等数据服务。

准备工作

1.获取API Key
http://lbsyun.baidu.com/apiconsole/key

2.建立工程
BaiduMapHelloWorld

3.添加地图引擎到Android工程中
添加jar包至lib目录下

4.在AndroidManifest.xml清单文件中添加权限

<!-- gps --><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /><!-- wifi --><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /><!-- 网络的权限 --><uses-permission android:name="android.permission.INTERNET" /><!-- 离线包 --><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><!-- 获取手机信息 --><uses-permission android:name="android.permission.READ_PHONE_STATE" />

5.初始化地图引擎
//发送Key到百度服务器,验证通过,获取地图数据
checkKey();

/**     * 验证key     */    private void checkKey() {        manager = new BMapManager(getApplicationContext());        //验证key        manager.init(ConstantValue.key, new MKGeneralListener() {            @Override            public void onGetPermissionState(int iError) {                // TODO 授权验证                if(iError == MKEvent.ERROR_PERMISSION_DENIED)                {                    PromptManager.showToast(HelloWorld.this, "授权验证失败");                }            }            @Override            public void onGetNetworkState(int iError) {                //常量:没有网络                //常量:授权验证失败                // TODO 网络判断                if(iError == MKEvent.ERROR_NETWORK_CONNECT)                {                    PromptManager.showNoNetWork(HelloWorld.this);                }            }        });    }
  1. 引入布局(地图控件)
    setContentView(R.layout.activity_main);
 <com.baidu.mapapi.map.MapView        android:id="@+id/ii_mapview"        android:layout_width="wrap_content"        android:layout_height="wrap_content"         />

7.初始化
在onCreate()方法中调用init();

private void init() {        mapView = (MapView) findViewById(R.id.ii_mapview);        //添加放大和缩小按钮//      mapView.addView(child)        mapView.setBuiltInZoomControls(true);               //控制地图的缩放        controller = mapView.getController();//MapView与MapController(组合)        controller.setZoom(12);    }
0 0
原创粉丝点击