百度地圖基礎開發,百度地圖開發

來源:互聯網
上載者:User

百度地圖基礎開發,百度地圖開發

  因為項目的需要,最近接觸了一下百度地圖Android開發,遇到很多問題,相信很多博友也遇到到過這些問題,現在把我的實踐經驗給大家分享一下。

  開發百度地圖,第一步:你需要首先登入百度地圖開放平台,註冊一個開發人員身份,通過這個身份你可以查看到百度最新的開發文檔,為我們的開發提供便利。有了開發人員身份後,你就可以開始為開發百度地圖做準備了。

  開啟Android開發工具,建立一個開發項目。然後利用你在百度註冊的開發人員身份申請密鑰,申請密鑰的方法百度文檔說的很清楚,給了兩鐘申請方法,建議使用後一種。有了密鑰下面就是開發需要使用的Jar包了,在百度開發人員平台下載自己需要的即可。

  有了上面的準備工作,接下來我們就可以開始開發了,開啟Android開發工具,開啟剛剛建立好的工程,把剛剛下載好的Jar包匯入到工程中,需要注意的是Jar包匯入時還需要添加一個:armeabi檔案夾裡面有兩個libBaiduMapSDK_v3_0_0.so和liblocSDK4d.so也要一併匯入。匯入選擇項目按右鍵,選擇properties>Java Build Path>Libraries,點擊右側Add External JARS...,把工程Libs下的Jar檔案選中,最後不要忘記把Oreder and Exporxt下的Jar包選上,點擊Ok至此環境配置就完成了。

  下面就是代碼了,首先AndroidManifest.xml檔案:

擷取許可權:

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" >    </uses-permission>    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" >    </uses-permission>    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" >    </uses-permission>    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" >    </uses-permission>    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" >    </uses-permission>    <uses-permission android:name="android.permission.READ_PHONE_STATE" >    </uses-permission>    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" >    </uses-permission>    <uses-permission android:name="android.permission.INTERNET" />    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" >    </uses-permission>    <uses-permission android:name="android.permission.READ_LOGS" >    </uses-permission>    <uses-permission android:name="android.permission.VIBRATE" />    <uses-permission android:name="android.permission.WAKE_LOCK" />    <uses-permission android:name="android.permission.WRITE_SETTINGS" />

 

設定密鑰

 

//添加在application裡面
<meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="密鑰號碼" /> <service android:name="com.example.baidumap_01" android:enabled="true" android:process=":remote" > <intent-filter> <action android:name="com.baidu.location.service_v2.2" > </action> </intent-filter> </service>

 

  布局檔案activity_main.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="${relativePackage}.${activityClass}" >    <com.baidu.mapapi.map.MapView        android:id="@+id/id_bmapView"        android:layout_width="fill_parent"        android:layout_height="fill_parent"        android:clickable="true" /></RelativeLayout>

  主檔案MainActivity.java檔案:

package com.example.baidumap_01;import com.baidu.mapapi.SDKInitializer;import com.baidu.mapapi.map.BaiduMap;import com.baidu.mapapi.map.MapView;import android.app.Activity;import android.os.Bundle;import android.view.Window;public class MainActivity extends Activity {        private MapView mMapView = null;    private BaiduMap mBaiduMap = null;        @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        requestWindowFeature(Window.FEATURE_NO_TITLE);        //在使用SDK各組件之前初始化context資訊,傳入ApplicationContext          //注意該方法要再setContentView方法之前實現         SDKInitializer.initialize(getApplicationContext());        setContentView(R.layout.activity_main);        //擷取地圖控制項引用         mMapView = (MapView) findViewById(R.id.id_bmapView);        mBaiduMap = mMapView.getMap();          //普通地圖          //mBaiduMap.setMapType(BaiduMap.MAP_TYPE_NORMAL);          //衛星地圖          mBaiduMap.setMapType(BaiduMap.MAP_TYPE_SATELLITE);            }        @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();       }    }

  運行後的效果:

  以上就是百度地圖V3.0的開發介紹,有興趣的可以留言交流。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.