百度地图应用开发(一)

最近对LBS比较感兴趣,在研究百度地图。先了解下百度地图的大概吧!

http://dev.baidu.com/wiki/imap/index.php?title=Android%E5%B9%B3%E5%8F%B0/%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97

以上是百度地图在android平台上的开发指南。

基于百度地图的应用开发和google地图一样,需要一个Key,所以我们要申请一下,相对于google地图的Key来说,百度地图的Key的申请是很简单的。

申请Key的网址: http://dev.baidu.com/wiki/static/imap/key/  当然要求是你必须得注册百度。


在百度地图的应用开发中,在Manifest要添加如下权限:

  1. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
  2. <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
  3. <uses-permission android:name="android.permission.INTERNET"></uses-permission>
  4. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
  5. <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
  6. <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
  7. <uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>

    具体权限是什么大家可以查下文档,在这里就不多说了。另外还要加上android版本的支持,如下:

    1. <supports-screens android:largeScreens="true"
    2. android:normalScreens="true" android:smallScreens="true"
    3. android:resizeable="true" android:anyDensity="true"/>
    4. <uses-sdk android:minSdkVersion="3"></uses-sdk>

      当然还要导入支持百度地图开发的相关的包(指南上面有下载),以下是我的项目文件:

      百度地图应用开发(一)


      main.xml

      复制代码
      <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <com.baidu.mapapi.MapView android:id="@+id/bmapsView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" /> </LinearLayout>
      复制代码


      MainActivity.java

      复制代码
       1 package com.baidumap;  2   3 import com.baidu.mapapi.BMapManager;  4 import com.baidu.mapapi.GeoPoint;  5 import com.baidu.mapapi.MapActivity;  6 import com.baidu.mapapi.MapController;  7 import com.baidu.mapapi.MapView;  8   9 import android.app.Activity; 10 import android.os.Bundle; 11  12 public class MainActivity extends MapActivity { 13  private BMapManager mBMapMan; 14  @Override 15  public void onCreate(Bundle savedInstanceState) { 16  super.onCreate(savedInstanceState); 17  setContentView(R.layout.main); 18  mBMapMan = new BMapManager(getApplication()); 19  mBMapMan.init("205114502786B06C4C95CEB0F55822F25E46AED2", null); 20  super.initMapActivity(mBMapMan); 21  22  MapView mMapView = (MapView) findViewById(R.id.bmapsView); 23  mMapView.setBuiltInZoomControls(true); //设置启用内置的缩放控件 24  25  mMapView.setTraffic(true); 26  27  MapController mMapController = mMapView.getController(); // 得到mMapView的控制权,可以用它控制和驱动平移和缩放 28  GeoPoint point = new GeoPoint((int) (23.141238 * 1E6), 29  (int) (113.342331 * 1E6)); //用给定的经纬度构造一个GeoPoint,单位是微度 (度 * 1E6) 30  mMapController.setCenter(point); //设置地图中心点 31  mMapController.setZoom(12); //设置地图zoom级别 32  } 33  34  @Override 35  protected void onDestroy() { 36  if (mBMapMan != null) { 37  mBMapMan.destroy(); 38  mBMapMan = null; 39  } 40  super.onDestroy(); 41  } 42  @Override 43  protected void onPause() { 44  if (mBMapMan != null) { 45  mBMapMan.stop(); 46  } 47  super.onPause(); 48  } 49  @Override 50  protected void onResume() { 51  if (mBMapMan != null) { 52  mBMapMan.start(); 53  } 54  super.onResume(); 55  } 56  @Override 57  protected boolean isRouteDisplayed() { 58  // TODO Auto-generated method stub 59  return false; 60  } 61 }
      复制代码


      运行结果如下:

      百度地图应用开发(一)

你可能感兴趣的:(百度地图应用开发(一))