このページでは、Maps SDK for iOS のユーティリティ ライブラリのセットアップ方法について説明します。
これらのユーティリティを試すには、次のいずれかを行います。
- デモアプリをインストールして実行します。デモアプリは、ユーティリティを試すために必要なすべてのコードを含むスタンドアロン プロジェクトです。
- ユーティリティ ライブラリを既存の Xcode プロジェクトにインストールします。これらのユーティリティを独自のプロジェクトに追加します。
必要に応じて CocoaPods をインストールする
ユーティリティ ライブラリは、Google-Maps-iOS-Utils
という名前の CocoaPods Pod として利用できます。CocoaPods は、Swift と Objective-C の Cocoa プロジェクト用のオープンソースの依存関係マネージャーです。
CocoaPods ツールをまだインストールしていない場合は、ターミナルから次のコマンドを実行して macOS にインストールします。
sudo gem install cocoapods
詳細については、CocoaPods スタートガイドをご覧ください。
デモアプリをインストールして実行する
ユーティリティ ライブラリにはデモアプリが含まれており、各ユーティリティをインストールして試すことができます。
次の 2 つの方法のいずれかを使用して、デモアプリをインストールします。GitHub のファイルを使用する
- GitHub からコードサンプル アーカイブをダウンロードし、アーカイブを展開します。
- ターミナル ウィンドウを開き、サンプル ファイルを展開したディレクトリに移動して、使用する言語に適したサンプル ディレクトリにドリルダウンします。
- Swift の場合は、
cd google-maps-ios-utils-master/samples/SwiftDemoApp
を実行します。 - Objective-C の場合、
cd google-maps-ios-utils-master/samples/ObjCDemoApp
を実行します。
- Swift の場合は、
- 次のコマンドを実行します。
pod install
- Xcode を終了し、プロジェクトの
.xcworkspace
ファイルを開いて(ダブルクリックして)Xcode を起動します。これ以降は、.xcworkspace
ファイルを使用してプロジェクトを開く必要があります。
CocoaPods v1.6.1 を使用する
- ターミナル ウィンドウを開き、バージョン 1.6.1 をインストールします。
sudo gem install cocoapods -v1.6.1
- Cocoapods を使用して Google マップ ファイルを取得します。
pod try Google-Maps-iOS-Utils
プロンプトが表示されたら、Swift または Objective-C を選択します。CocoaPods が仕様リポジトリを更新し、
SwiftDemoApp.xcodeproj
またはObjCDemoApp.xcodeproj
という名前の一時的な Xcode プロジェクトでデモを開きます。
デモアプリに API キーを追加する
[API キーを取得する] で、アプリの API キーを生成します。次に、そのキーをデモアプリの Xcode プロジェクトに追加します。Swift
次のように、API キーを AppDelegate.swift
に追加します。
- 次のインポート ステートメントを追加します。
import GoogleMaps
- 次の行を編集して、二重引用符内に API キーを追加します。
// Change this key to a valid key registered with the demo app bundle id. let mapsAPIKey = ""
Objective-C
次のように、API キーを AppDelegate.m
に追加します。
- 次のインポート ステートメントを追加します。
@import GoogleMaps;
- 次の行を編集して、二重引用符内に API キーを追加します。
// Change this key to a valid key registered with the demo app bundle id. static NSString *const kMapsAPIKey = @"";
デモアプリをビルドして実行する
API キーを追加したら、プロジェクトをビルドして実行します。
- Swift バージョンのデモを実行している場合は、アプリに表示するユーティリティを選択できます。
- Objective-C バージョンのデモを実行している場合は、マーカー クラスタリング ユーティリティのデモが表示されます。その後、Objective-C バージョンのデモを編集して、各ユーティリティを試すことができます。詳しくは、以下のアプリにユーティリティを追加するをご覧ください。
ユーティリティ ライブラリを Xcode プロジェクトとしてインストールする
次の手順に従って、ユーティリティ ライブラリを Xcode ワークスペースに追加します。
CocoaPods を使用
- Xcode プロジェクトがまだない場合は、ここで作成してローカルマシンに保存します。(iOS 開発を初めて行う場合は、Single View Application を作成します)。
- プロジェクトの Pod ファイルがまだない場合は、プロジェクト ディレクトリに
Podfile
という名前のファイルを作成します。このファイルでプロジェクトの依存関係を定義します。 - プロジェクトの Pod ファイルを編集し、
Google-Maps-iOS-Utils
Pod への依存関係を追加します。Maps SDK for iOS とユーティリティ ライブラリに必要な依存関係を含む例を次に示します。source 'https://github.com/CocoaPods/Specs.git' platform :ios, '13.0' target 'YOUR_APPLICATION_TARGET_NAME_HERE' do use_frameworks! pod 'GoogleMaps', '7.4.0' pod 'Google-Maps-iOS-Utils', '4.2.2' end
pod install
を実行します。- Xcode を終了し、プロジェクトの
.xcworkspace
ファイルを開いて(ダブルクリックして)Xcode を起動します。これ以降は、.xcworkspace
ファイルを使用してプロジェクトを開く必要があります。
注: マーカー クラスタリング ユーティリティは四分木に依存しますが、マーカー クラスタリングなしで四分木を使用できます。四分木ユーティリティのみが必要な場合は、Pod ファイルで pod 'Google-Maps-iOS-Utils'
を 'Google-Maps-iOS-Utils/QuadTree'
に変更します。
Carthage の使用
- Carthage をインストールします。いくつかの方法があるため、正確な手順については Carthage の README ファイルをご覧ください。
- Xcode プロジェクトをまだ作成していない場合は、ここで作成してローカルマシンに保存します(iOS アプリを初めて開発する場合は、新規プロジェクトの作成時に iOS アプリ テンプレートを選択してください。Xcode 11.7 以前では [Single View Application] を作成します)。
- プロジェクトのディレクトリに、
Cartfile
という名前のファイルを作成します。このファイルでプロジェクトの依存関係を定義します。 Cartfile
を編集して、Maps SDK for iOS ユーティリティ ライブラリの依存関係を追加します。
github "googlemaps/google-maps-ios-utils"
Cartfile
を保存します。- ターミナル ウィンドウで、
Cartfile
を含むディレクトリに移動します。
cd <path-to-project>
- 更新コマンドを実行します。
carthage update --platform iOS
これにより、Cartfile
で指定された API と、その依存関係がインストールされます。 - Finder のプロジェクト ディレクトリで、
Carthage/Build/iOS
の下にあるダウンロードしたフレームワーク ファイルに移動します。 - 次のバンドルをプロジェクトにドラッグして、Maps SDK for iOS フレームワークをプロジェクトに追加します。
(プロンプトが表示されたら、[Copy items if needed, use the same version as above] を選択します)。
GoogleMaps-x.x.x/Base/Frameworks/GoogleMapsBase.framework
GoogleMaps-x.x.x/Maps/Frameworks/GoogleMaps.framework
GoogleMaps-x.x.x/Maps/Frameworks/GoogleMapsCore.framework
GoogleMaps-x.x.x/Maps/Frameworks/GoogleMapsUtils.framework
- プロジェクトで
GoogleMaps.framework
を右クリックし、[Show In Finder] を選択します。 Carthage/Build/iOS/GoogleMaps.framework/Resources/GoogleMaps.bundle
をResources
フォルダからプロジェクトにドラッグします。プロンプトが表示されたら、[Copy items into destination group's folder] が選択されていないことを確認します。- プロジェクト ナビゲータで目的のプロジェクトを選択し、アプリのターゲットを選択します。
- アプリケーションのターゲットの [Build Phases] タブを開き、[Link Binary with Libraries] 内で、次のフレームワークを追加します。
Accelerate.framework
CoreData.framework
CoreGraphics.framework
CoreImage.framework
CoreLocation.framework
CoreTelephony.framework
CoreText.framework
GLKit.framework
ImageIO.framework
libc++.tbd
libz.tbd
OpenGLES.framework
QuartzCore.framework
SystemConfiguration.framework
UIKit.framework
(特定のターゲットではなく)プロジェクトを選択して、[Build Settings] タブを開きます。[Other Linker Flags] セクションで
-ObjC
を追加します。これらの設定が表示されない場合は、[Build Settings] バーのフィルタを [Basic] から [All] に変更します。
Swift Package Manager を使用する
- Xcode プロジェクトがまだない場合は、ここで作成してローカルマシンに保存します。(iOS 開発を初めて行う場合は、新しいプロジェクトを作成し、iOS App テンプレートを選択します。Xcode 11.7 以前では、Single View Application を作成します)。
- Maps SDK for iOS を依存関係として追加します。オプションについては、SDK のインストールをご覧ください。
- Xcode プロジェクトで、[File] -> [Swift Packages] -> [Add Package Dependency] に移動します。
- 表示されたウィンドウで、Maps SDK for iOS ユーティリティ ライブラリ リポジトリの URL
https://github.com/googlemaps/google-maps-ios-utils
を入力し、[次へ] を選択します。 - この時点で、GitHub アカウントでの認証を求められる場合があります。手順に沿って GitHub 個人アクセス トークンを作成し、プロセスを続行します。
- 次のウィンドウで [Version] ラジオボタンを選択し、プルダウン リストから [Exact] を選択して、Maps SDK for iOS ユーティリティ ライブラリの最新バージョン(「3.4.0」など)を入力し、[次へ] を選択します。
アプリに API キーを追加する
API キーを生成して Xcode プロジェクトに追加する手順については、Xcode プロジェクトを設定するをご覧ください。プロジェクトをビルドして実行する
API キーを追加したら、プロジェクトをビルドして実行します。
アプリにユーティリティを追加する
アプリでユーティリティを使用する方法の詳細については、各ユーティリティのドキュメントをご覧ください。