メインコンテンツへスキップ

iOSセットアップ

GitHub
Apple MapKitを使ったiOSシミュレータの画面収録:店舗検索ピン、配送エリア、ルート、500個のクラスターマーカー、傾斜した3Dカメラ、衛星地図タイプ

iOSでは Apple MapKit。行います。 iOSでは Google Mapsの API キーが必要です。

もし enableCurrentLocationを使用する場合、以下に位置情報の使用目的(location usage string)を追加してください: ios/App/App/Info.plist:

<key>NSLocationWhenInUseUsageDescription</key>
<string>We use your location to show you on the map.</string>

このプラグインは、位置情報の権限を keepAlive so enableCurrentLocation 権限が許可された後、確実に解決できます。

ネイティブの MKMapView は Capacitor のWKWebView階層にマウントされ、 onResize と onDisplay. Ionicページが再表示される際、WebKitがスクロールビューを再構築していると、プラグイン内のコールパスによってマップが再マウントされます。

マップコンテナ上のHTMLレイヤー越しにマップを表示させるには、WebViewまたはページの背景を透明に設定してください。

in toBack モードでは、 data-map-overlay にHUDラッパーを適用して、READMEのオーバーレイCSSでタップを有効にしてください。ネイティブのタッチルーターは、ヒットターゲットが透明で、かつインタラクティブな要素の下にない場合に、ジェスチャーをマップに送信します。

ネイティブのiOSブリッジは、以下も公開しています。 takeSnapshot, searchAutocomplete, searchPlaces, searchResolve, geocode、および reverseGeocode. これらはまだ NativeMap クラスラッパーには含まれていません。iOSでMapKitの検索やジオコーディングが必要な場合は、低レベルのプラグインハンドルから呼び出してください。

import { registerPlugin } from '@capacitor/core';
type NativeMapBridge = {
takeSnapshot(options: { id: string }): Promise<{ image: string }>;
geocode(options: { address: string }): Promise<Record<string, unknown>>;
};
const NativeMapBridge = registerPlugin<NativeMapBridge>('NativeMap');