Androidでの百度地图の基本開発

Androidで百度地图を使用するための基本的な開発手順を紹介します。

まず、百度地图开放平台にアクセスし、開発者アカウントを作成します。これにより、最新の開発ドキュメントへのアクセスが可能になります。次に、Android Studioで新しいプロジェクトを作成します。そして、開発者アカウントを利用してAPIキーを取得します。詳細な手順は百度のドキュメントに記載されています。

必要なJarファイルとネイティブライブラリ(armeabiフォルダ内のlibBaiduMapSDK_v3_0_0.soとliblocSDK4d.so)をダウンロードし、プロジェクトに追加します。プロジェクトの右クリックからProperties > Java Build Path > Librariesを選択し、Add External JARs... をクリックして、ダウンロードしたJarファイルを追加します。最後に、Order and ExportタブでJarファイルを選択し、OKをクリックします。

次に、AndroidManifest.xmlファイルを編集します。

権限の設定:

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_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.INTERNET" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.READ_LOGS" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />

APIキーの設定

<!-- applicationタグ内に以下を追加 -->
<meta-data
    android:name="com.baidu.lbsapi.API_KEY"
    android:value="あなたのAPIキー" />

<service
    android:name="com.example.baidumap_01"
    android:enabled="true"
    android:process=":remote" >
    <intent-filter>
        <action android:name="com.baidu.location.service_v2.2" />
    </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 mapView = null;
    private BaiduMap baiduMap = null;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        // SDKの各コンポーネントを使用する前に初期化を行う
        SDKInitializer.initialize(getApplicationContext());
        setContentView(R.layout.activity_main);
        // マップビューの参照を取得
        mapView = (MapView) findViewById(R.id.id_bmapView);
        baiduMap = mapView.getMap();  
        // サテライトマップ
        baiduMap.setMapType(BaiduMap.MAP_TYPE_SATELLITE);
    }
    
    @Override  
    protected void onDestroy() {  
        super.onDestroy();  
        // アクティビティのonDestroy時にマップビューのonDestroyを呼び出す
        mapView.onDestroy();  
    }  
     
    @Override  
    protected void onResume() {  
        super.onResume();  
        // アクティビティのonResume時にマップビューのonResumeを呼び出す
        mapView.onResume();  
    }  
     
    @Override  
    protected void onPause() {  
        super.onPause();  
        // アクティビティのonPause時にマップビューのonPauseを呼び出す
        mapView.onPause();  
    }
}

実行後の結果:

以上がAndroidでの百度地图V3.0の基本的な開発手順です。

タグ: 百度地图 Android BaiduMapSDK APIキー 地図表示

8月2日 03:11 投稿