メインコンテンツへスキップ
@capgo/capacitor-native-map デバイス API オープンソース

Native Map (iOS) Capacitor プラグイン

単一の API で、Android は Google Maps、iOS は Apple MapKit、Web は Google Maps JS のマーカー、カメラ、オーバーレイを扱えます

インストール

bun add @capgo/capacitor-native-map bunx cap sync
npm、pnpm、または yarn
  • npm install @capgo/capacitor-native-map
  • pnpm add @capgo/capacitor-native-map
  • yarn add @capgo/capacitor-native-map

ガイド

Capacitor で Native Map を使う方法

@capgo/capacitor-native-map の使い方

1つの TypeScript API で、Android の Google Maps、iOS の Apple MapKit、Web の Google Maps JS を操作でき、マーカー、カメラ、図形、クラスタリング、イベントに対応。

インストール

bun add @capgo/capacitor-native-map
bunx cap sync

このプラグインで利用可能な機能

  • create: DOM要素内に埋め込まれたマップ、または toBack: true 透明なHTMLの背後に配置するマップ。
  • updateLayout: ネイティブマップのリサイズと再配置 (CSSピクセル)。
  • setCamera / fitBounds: カメラとビューポートの制御。
  • addMarker / addMarkers / removeMarker: タップおよびドラッグリスナー付きのマーカー。
  • enableClustering: 密集したマーカーセットのグループ化。
  • enableCurrentLocation: 権限が許可された場合のユーザー位置ドット。
  • オーバーレイ: ポリゴン、ポリライン、サークル、タイルレイヤー (プラットフォームにより異なります)。

使用例

埋め込みマップ

import { NativeMap } from '@capgo/capacitor-native-map';

const map = await NativeMap.create({
  id: 'main-map',
  element: document.getElementById('map')!,
  apiKey: 'YOUR_GOOGLE_MAPS_API_KEY',
  config: {
    center: { lat: 37.7749, lng: -122.4194 },
    zoom: 12,
  },
});

map.setOnMapClickListener((e) => console.log(e.latitude, e.longitude));

// In a framework component, call `await map.destroy()` from your teardown/cleanup hook.

HTML UIを重ねたバックグラウンドマップ

const map = await NativeMap.create({
  id: 'stores-map',
  toBack: true,
  apiKey: 'YOUR_GOOGLE_MAPS_API_KEY',
  config: {
    center: { lat: 40.7128, lng: -74.006 },
    zoom: 11,
    x: 0,
    y: 0,
    width: window.innerWidth,
    height: window.innerHeight,
  },
});

await map.updateLayout({
  x: 0,
  y: 0,
  width: window.innerWidth,
  height: window.innerHeight,
});

HUDセクションをラップするには data-map-overlay (Getting Startedを参照) オーバーレイのCSSでタップが有効になり、透明な領域のジェスチャーはマップに渡されます。

リファレンス全文

よくある質問

Native Map プラグイン FAQ

Capacitor アプリに Native Map プラグインをインストールするには?

"bun add @capgo/capacitor-native-map" (または "npm install @capgo/capacitor-native-map") を実行し、次に "bunx cap sync" を実行して、iOS と Android プロジェクトがネイティブ code を認識するようにします。アプリの code から "@capgo/capacitor-native-map" をインポートします。

@capgo/capacitor-native-map は React、Vue、Angular で動作しますか?

はい。Native Map は Capacitor パッケージなので、Ionic、React、Vue、Angular、Svelte、プレーン JavaScript を含む、Capacitor 内で動作するすべての Web フレームワークで動作します。

@capgo/capacitor-native-map はどの Capacitor バージョンをサポートしていますか?

Capgo プラグインは Capacitor のメジャーバージョンに合わせています。使用している Capacitor のメジャーバージョンに一致するプラグインのメジャーバージョンを使ってください (例: Capacitor 8 ならプラグイン v8)。GitHub の README にある互換性テーブルに、メンテナンス中のバージョンが記載されています。

@capgo/capacitor-native-map は無料かつオープンソースですか?

はい。ソース code は https://github.com/Cap-go/capacitor-native-map/ の GitHub で公開されており、npm から無料でインストールできます。バグ報告やプルリクエストをお待ちしています。

App Store のレビューなしで、Native Map を使用している code を更新できますか?

プラグインのインストールやアップグレードはネイティブの code を変更するため、新しいストアビルドが必要です。その後は、プラグインを呼び出す JavaScript、HTML、CSS の変更を Capgo Live Updates で即座に配信できます。

アプリの審査を待たずに Native Map の変更をリリース

プラグインをストア用ビルドに組み込めば、Capgo live updates で JavaScript、HTML、CSS の変更を数分でユーザーに配信できます

Capgo から始める