調用百度地圖步驟

1步:下載jar包,兩個文件一個jar一個so文件

http://developer.baidu.com/map/sdkandev-download.htm

//右下角有個"lib庫"

2步:工程內引入庫,將so文件放在工程的libs/armeabi 下面 //沒有請新建文件夾

將jar文件放入libs下面

3步:選擇工程右鍵屬性->java bulid path->libraries->add jars選擇你的工程內libs下的jar(上步放入的) OK就完成了包的引用

4步:給manifest添加權限(很重要)

 

  1. <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>

  2. <uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION"/>

  3. <uses-permissionandroid:name="android.permission.INTERNET"/>

  4. <uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

  5. <uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>

  6. <uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"/>

  7. <uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>

   
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />  
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />  
    <uses-permission android:name="android.permission.INTERNET" />  
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />  
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />  
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />  

5步:佈局layout 之 main.xml  

 

 

  1. <?xmlversion="1.0"encoding="utf-8"?>

  2. <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"

  3. android:orientation="vertical"

  4. android:layout_width="fill_parent"

  5. android:layout_height="fill_parent"

  6. >

  7. <com.baidu.mapapi.MapViewandroid:id="@+id/map_View"

  8. android:layout_width="fill_parent"

  9. android:layout_height="fill_parent"

  10. android:clickable="true"

  11. />

  12. </LinearLayout>

    <?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/map_View"  
            android:layout_width="fill_parent"  
            android:layout_height="fill_parent"  
            android:clickable="true"  
        />  
    </LinearLayout>  

6步:開發百度地圖,需要申請個Key,很簡單,只需幾秒鐘時間即可完成。 http://developer.baidu.com/map/android-mobile-apply-key.htm

 

7步:示例mainActivity

 

  1. publicclass MainActivity extends MapActivity {    

  2. private BMapManager mapManager;    

  3. private MapView mapView;    

  4. private MapController mapController;    

  5. @Override

  6. publicvoid onCreate(Bundle savedInstanceState) {    

  7. super.onCreate(savedInstanceState);    

  8.         setContentView(R.layout.main);    

  9. // init 

  10.         mapManager = new BMapManager(getApplication());    

  11.         mapManager.init("285B415EBAB2A92293E85502150ADA7F03C777C4"null); //your API key 

  12. super.initMapActivity(mapManager);    

  13.         mapView = (MapView) findViewById(R.id.map_View);    

  14. // 設置地圖模式爲交通地圖   

  15.         mapView.setTraffic(true);    

  16. // 設置啓用內置的縮放控件   

  17.         mapView.setBuiltInZoomControls(true);    

  18. // 用經緯度初始化中心點 

  19.         GeoPoint point = new GeoPoint((int) (47.118440 * 1E6), (int) (87.493147 * 1E6));    

  20. // 創建標記maker //有一個標註圖片,沒有上百度找一張,drawable裏 

  21.         Drawable marker = this.getResources().getDrawable(R.drawable.iconmarka);    

  22. // 爲maker定義位置和邊界   

  23.         marker.setBounds(00, marker.getIntrinsicWidth(), marker.getIntrinsicHeight());    

  24. // 取得地圖控制器對象,用於控制MapView   

  25.         mapController = mapView.getController();    

  26. // 設置地圖的中心   

  27.         mapController.setCenter(point);    

  28. // 設置地圖默認的縮放級別   

  29.         mapController.setZoom(12);    

  30.     }    

  31. @Override

  32. protectedboolean isRouteDisplayed() {    

  33. returnfalse;    

  34.     }    

  35. @Override

  36. protectedvoid onDestroy() {    

  37. if (mapManager != null) {    

  38.             mapManager.destroy();    

  39.             mapManager = null;    

  40.         }    

  41. super.onDestroy();    

  42.     }    

  43. @Override

  44. protectedvoid onPause() {    

  45. if (mapManager != null) {    

  46.             mapManager.stop();    

  47.         }    

  48. super.onPause();    

  49.     }    

  50. @Override

  51. protectedvoid onResume() {    

  52. if (mapManager != null) {    

  53.             mapManager.start();    

  54.         }    

  55. super.onResume();    

  56.     }    

  57. }    

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章