ドキュメント / セットアップ / React / Mappls
Mappls セットアップ
Mappls(MapmyIndia)の Web SDK を MapConductor から使う手順です。web では 1 本の API キーを view state に渡します。
PACKAGE
@mapconductor/react-for-mappls
API KEY
必要
VIEW
MapplsMapView2D
TIME
10 分
前提
Node.js と React 18 以上のプロジェクト
Mappls(MapmyIndia)のアカウントと API キー
STEP 01
API キーを取得する
Mappls の開発者コンソールで Web 向けの API キーを発行します。ネイティブ側と違い、web は設定ファイルではなく 1 本のキーで動きます。
STEP 02
パッケージを入れる
Mappls の web SDK は依存として同梱されます。
shellShell
npm install @mapconductor/react-for-mappls @mapconductor/js-sdk-core @mapconductor/js-sdk-react
STEP 03
キーを view state に渡す
キーは useMapplsViewState に渡します。実値はソース管理に入れず、使っているビルドツールの環境変数の仕組みで読み込んでください。
動作確認
ここまで動けば完了
デリーを中心に地図を出します。タイルが読み込まれれば完了です。
import {
MapplsDesign,
MapplsMapView2D,
useMapplsViewState,
} from '@mapconductor/react-for-mappls';
import { createGeoPoint, createMapCameraPosition } from '@mapconductor/js-sdk-core';
// Your own key. Read it from your environment however your build tool does
// it, and keep it out of source control.
const MAPPLS_API_KEY = '…';
const DELHI = createGeoPoint({ latitude: 28.6139, longitude: 77.2090 });
export default function App() {
const state = useMapplsViewState({
apiKey: MAPPLS_API_KEY,
mapDesignType: MapplsDesign.Default,
cameraPosition: createMapCameraPosition({ position: DELHI, zoom: 11 }),
});
return (
<div style={{ width: '100vw', height: '100vh' }}>
<MapplsMapView2D state={state} />
</div>
);
}地図デザイン
Notes
Default
契約に関係なく使える既定のスタイル
StandardDay
標準の昼スタイル
StandardNight / GreyDay
追加料金の有料オプション。契約していないと SDK が弾く
うまくいかないとき
地図が真っ白で、タイルが 1 枚も来ない
- 資格情報が地図生成より前に設定されているか確認します。
- Mappls のコンソールでキーが有効か、利用枠を超えていないか確認します。
- 端末がネットワークに出られるか確認します。
スタイルを変えると style not found になる
- StandardNight と GreyDay は追加料金の有料オプションです。契約していない場合は Default か StandardDay を使ってください。
SDK のスクリプトが 401 で読み込めない
- Mappls の web SDK は sdk.mappls.com からキー付きで読み込まれます。401 が返る場合、そのキーに web SDK の利用権限が付いていないか、失効しています。
次に
マーカー・ポリライン・ポリゴン・円・グラウンドイメージ・ラスターレイヤー・InfoBubble は共通 API のまま使えます。