課金を有効にして API キーを作成すると、Xcode を設定できるようになります プロジェクトを作成します。
各バージョンのリリースノート なります。
ステップ 1: 必要なソフトウェアをインストールする
Maps SDK for iOS を使ってプロジェクトを作成するには、以下をダウンロードしてインストールする必要があります。
- Xcode バージョン 15.0 以降
ステップ 2: Xcode プロジェクトを作成し、Maps SDK for iOS をインストールする
Swift Package Manager
Maps SDK for iOS は でインストールできます。 Swift Package Manager。SDK を追加するには、 既存の Maps SDK for iOS の依存関係をすべて削除しました。
新規または既存のプロジェクトに SDK を追加する手順は次のとおりです。
-
Xcode
project
またはworkspace
を開き、[File >パッケージの依存関係を追加する。 - URL として「https://github.com/googlemaps/ios-maps-sdk」と入力し、Enter キーを押します。 [パッケージを追加]をクリックします
-
特定の
version
をインストールするには、[Dependency Rule] フィールドを次のいずれかに設定します。 オプションを提供します。新しいプロジェクトの場合は、最新バージョンを指定し、[Exact Version] オプションを使用することをおすすめします。完了したら、[Add Package] をクリックします。 -
[パッケージ プロダクトを選択] ウィンドウで、指定した
main
ターゲットにGoogleMaps
(バージョン 9.0.0 より前の場合は、GoogleMaps
、GoogleMapsBase
、GoogleMapsCore
)が追加されることを確認します。完了したら、[パッケージを追加] をクリックします。 -
インストールを確認するには、ターゲットの
General
ペインに移動します。 [Frameworks, Libraries, and Embedded Content] に、インストールされたパッケージが表示されます。 [Project Navigator] の [Package Dependencies] セクションでパッケージとそのバージョンを確認することもできます。
既存のプロジェクトの package
を更新する手順は次のとおりです。
9.0.0 より前のバージョンからアップグレードする場合は、 次の依存関係:
GoogleMapsBase
、GoogleMapsCore
、 アップグレード後にGoogleMapsM4B
。次の依存関係を削除しないでください。GoogleMaps
。詳しくは、 バージョン 9.0.0 リリースノート。Xcode プロジェクト構成設定で、フレームワーク、ライブラリ、 および埋め込みコンテンツをご覧ください。マイナス記号(-)を使用して、次のフレームワークを削除します。
GoogleMapsBase
(9.0.0 より前のバージョンからのアップグレードのみ)GoogleMapsCore
(9.0.0 より前のバージョンからのアップグレードのみ)GoogleMapsM4B
(9.0.0 より前のバージョンからのアップグレードのみ)
- Xcode で、[File] > [パッケージ >最新のパッケージ バージョンへの更新」を選択します。
- インストールを確認するには、Project Navigator の [Package Dependencies] セクションに移動します。 パッケージとそのバージョンを確認します。
以下を使用して、追加された既存の Maps SDK for iOS 依存関係を削除するには
CocoaPods
の手順は次のとおりです。
- Xcode ワークスペースを閉じます。ターミナルを開き、次のコマンドを実行します。
sudo gem install cocoapods-deintegrate cocoapods-clean pod deintegrate pod cache clean --all
-
Podfile
、Podfile.resolved
、および CocoaPods 以外で使用していない場合には、Xcodeworkspace
です。
-
Xcode プロジェクト構成設定で、フレームワーク、ライブラリ、
および埋め込みコンテンツをご覧ください。マイナス記号(-)を使用して、次のフレームワークを削除します。
<ph type="x-smartling-placeholder">
- </ph>
GoogleMaps
GoogleMapsBase
(インストールの場合のみ) (バージョン 9.0.0 より前)GoogleMapsCore
(インストールの場合のみ) (バージョン 9.0.0 より前)GoogleMapsM4B
(インストールの場合のみ) (バージョン 9.0.0 より前)
-
Xcode プロジェクトの最上位ディレクトリから、
GoogleMaps
バンドルを削除します。
CocoaPods
Maps SDK for iOS は CocoaPods ポッドとして提供されています。CocoaPods は、Swift と Objective-C の Cocoa プロジェクトで依存関係を管理するためのオープンソース ツールです。
CocoaPods ツールがない場合は、ターミナルから以下のコマンドを実行して、macOS 上に CocoaPods ツールをインストールします。詳しくは、CocoaPods スタートガイドをご覧ください。
sudo gem install cocoapods
Maps SDK for iOS の Podfile
を作成し、これを使用して API とその依存関係をインストールします。
- Xcode プロジェクトがまだない場合は、ここで作成して
インストールします。iOS 開発が初めての場合:
- 新しいプロジェクトを作成する。
- [iOS >App テンプレート。
- プロジェクト オプション画面で次の操作を行います。
- [Project Name] を入力します。
- [Bundle identifier] フィールドの値を記録します。この値を使用して、以下の API キーを制限できます。
- プロジェクトの [Interface] を [Storyboard] に設定します。
- [Language] を [Swift] または [Objective-C] に設定します。
- プロジェクトのディレクトリに、
Podfile
という名前のファイルを作成します。このファイルでプロジェクトの依存関係を定義します。 Podfile
を編集して、依存関係とそのバージョンを追加します。次の例では、Maps SDK for iOS に必要な依存関係を追加しています。 定期的にsource 'https://github.com/CocoaPods/Specs.git' platform :ios, '15.0' target 'YOUR_APPLICATION_TARGET_NAME_HERE' do pod 'GoogleMaps', '8.4.0' end
pod outdated
を実行して、新しい候補を検出してください。 常に最新の状態に保たれます。必要に応じて、最新バージョンにアップグレードしてください。Podfile
を保存します。ターミナルを開き、
Podfile
を含むディレクトリに移動します。cd <path-to-project>
pod install
コマンドを実行します。Podfile
で指定した API とその依存関係がインストールされます。pod install
Xcode を終了し、プロジェクトの
.xcworkspace
ファイルを(ダブルクリックして)開いて、Xcode を起動します。これ以降、このプロジェクトを開くには.xcworkspace
ファイルを使用する必要があります。
既存のプロジェクトの API を更新する手順は次のとおりです。
- ターミナルを開き、
Podfile
を含むプロジェクト ディレクトリに移動します。 pod update
コマンドを実行します。これにより、すべての API が更新されますPodfile
で指定されたバージョンを最新バージョンに変更します。
手動インストール
このガイドでは、Maps SDK for iOS を含む XCFrameworks をプロジェクトに手動で追加し、Xcode でビルド設定を構成する方法について説明します。XCFramework は、Apple シリコンを使用するマシンなど、複数のプラットフォームで使用できるバイナリ パッケージです。- 次の SDK バイナリとリソース ファイルをダウンロードします。
- ファイルを解凍して、XCFrameworks とリソースにアクセスします。
- Xcode プロジェクトがまだない場合は、ここで作成して
インストールします。iOS 開発が初めての場合:
- 新しいプロジェクトを作成する。
- [iOS >App テンプレート。
- プロジェクト オプション画面で次の操作を行います。
- [Project Name] を入力します。
- [Bundle identifier] フィールドの値を記録します。この値を使用して、以下の API キーを制限できます。
- プロジェクトの [Interface] を [Storyboard] に設定します。
- [Language] を [Swift] または [Objective-C] に設定します。
-
[全般] タブを開きます。次の XCFrameworks をプロジェクトにドラッグします
[フレームワーク、ライブラリ、埋め込みコンテンツ] に移動します。確認事項
XCFramework ごとに [Do Not Embed] を選択します。
<ph type="x-smartling-placeholder">
- </ph>
GoogleMaps.xcframework
GoogleMapsBase.xcframework
GoogleMapsCore.xcframework
-
GoogleMaps.bundle
を GoogleMapsResources からコピーします。 Xcode プロジェクトの最上位ディレクトリにダウンロードしたファイルを使用します。まず プロンプトが表示されたら、アイテムを宛先グループのフォルダにコピーします。 - プロジェクト ナビゲータでプロジェクトを選択し、 通信できます。
-
アプリケーションのターゲットの [Build Phases] タブを開きます。
[Link Binary with Libraries] で、以下を追加します。
フレームワークとライブラリ:
<ph type="x-smartling-placeholder">
- </ph>
Accelerate.framework
Contacts.framework
CoreData.framework
CoreGraphics.framework
CoreImage.framework
CoreLocation.framework
CoreTelephony.framework
CoreText.framework
GLKit.framework
ImageIO.framework
libc++.tbd
libz.tbd
Metal.framework
OpenGLES.framework
(OpenGL を使用している場合のみ)QuartzCore.framework
SystemConfiguration.framework
UIKit.framework
-
(特定のターゲットではなく)プロジェクトを選択して、[Build Settings] タブを開きます。[Linking - General ->]その他のリンカー フラグセクションに
-ObjC
を「Debug」に追加[リリース]を選択しますこれらの設定が表示されない場合は、[Build Settings] バーのフィルタを [Basic] から [All] に変更します。 -
Places SDK for iOS XCFramework をインストールする方法については、以下をご覧ください。 はじめに Places SDK for iOS と連携しています。
ステップ 3: Apple プライバシー マニフェスト ファイルを検査する
Apple が App Store のアプリについては、アプリのプライバシーに関する詳細情報を必要とします。最新情報などについては、Apple App Store のプライバシーの詳細ページをご覧ください。
Apple Privacy Manifest ファイルは、SDK のリソース バンドルに含まれています。プライバシー マニフェスト ファイルが含まれていることを確認し、その内容を検査するには、アプリのアーカイブを作成し、そのアーカイブからプライバシー レポートを生成します。
ステップ 4: API キーをプロジェクトに追加する
[API キーを取得] で、 アプリの API キーを生成したとき。そのキーを Xcode プロジェクトに追加します。
以下の例で YOUR_API_KEY
とある箇所は、実際の API キーに置き替えてください。
Swift
次のように、API キーを AppDelegate.swift
に追加します。
- 以下のインポート文を追加します。
import GoogleMaps
application(_:didFinishLaunchingWithOptions:)
に以下を追加します。 メソッドを呼び出し、API キーを使用します。GMSServices.provideAPIKey("YOUR_API_KEY")
- Places API も使用している場合は、次のようにキーを再度追加します。
GMSPlacesClient.provideAPIKey("YOUR_API_KEY")
Objective-C
次のように、API キーを AppDelegate.m
に追加します。
- 以下のインポート文を追加します。
@import GoogleMaps;
application:didFinishLaunchingWithOptions:
に以下を追加します。 メソッドを呼び出し、API キーを使用します。[GMSServices provideAPIKey:@"YOUR_API_KEY"];
- Places API も使用している場合は、次のようにキーを再度追加します。
[GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];
ステップ 5: 地図を追加する
Swift
import UIKit import GoogleMaps class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. // Create a GMSCameraPosition that tells the map to display the // coordinate -33.86,151.20 at zoom level 6. let options = GMSMapViewOptions() options.camera = GMSCameraPosition.camera(withLatitude: -33.86, longitude: 151.20, zoom: 6.0) options.frame = self.view.bounds let mapView = GMSMapView(options: options) self.view.addSubview(mapView) // Creates a marker in the center of the map. let marker = GMSMarker() marker.position = CLLocationCoordinate2D(latitude: -33.86, longitude: 151.20) marker.title = "Sydney" marker.snippet = "Australia" marker.map = mapView } }
Objective-C
#import "ViewController.h" #import <GoogleMaps/GoogleMaps.h> @interface ViewController() @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. // Create a GMSCameraPosition that tells the map to display the // coordinate -33.86,151.20 at zoom level 6. GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init]; options.camera = [GMSCameraPosition cameraWithLatitude:-33.8683 longitude:151.2086 zoom:6]; options.frame = self.view.bounds; GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options]; [self.view addSubview:mapView]; // Creates a marker in the center of the map. GMSMarker *marker = [[GMSMarker alloc] init]; marker.position = CLLocationCoordinate2DMake(-33.86, 151.20); marker.title = @"Sydney"; marker.snippet = @"Australia"; marker.map = mapView; } @end
ステップ 5(省略可): API で使用する URL スキームを宣言する
iOS 9 および Xcode 7 以降では、使用する URL スキームをアプリで宣言できます。
そのスキームをアプリの Info.plist
ファイルで指定します。「
ユーザーがクリックすると、Maps SDK for iOS が Google マップ モバイルアプリを開きます
表示されるため、アプリで関連 URL を宣言できます。
説明します。
Maps SDK for iOS で使用する URL スキームを宣言するには、
Info.plist
に次の行を追加します。
次のスクリーンショットは、Xcode でのユーザー インターフェースでの設定を示しています。
上記の宣言を行わないと、ユーザーが 地図上には Google ロゴが表示されます。
- -canOpenURL: URL「comgooglemaps://」に対して失敗- エラー: 「このアプリは スキーマ「comgooglemaps」のクエリを許可
- -canOpenURL: が URL「googlechromes://」で失敗- エラー: 「このアプリは スキーム「googlechromes」のクエリを許可する
これらのエラーを排除するには、Info.plist
に宣言を追加します。
次のステップ
API キーと Xcode プロジェクトが用意できたので、アプリを作成して実行できます。 Navigation SDK for iOS には、作業に役立つチュートリアルやサンプルアプリが豊富に用意されています。 始めましょう。詳しくは以下をご覧ください。