課金を有効にして API キーを作成したら、アプリの開発に使用する Xcode プロジェクトをセットアップできます。
各リリースについて、リリースノートが提供されています。
ステップ 1: 必要なソフトウェアをインストールする
Places SDK for iOS を使用してプロジェクトを作成するには、次のものが必要です。
- Xcode バージョン 16.0 以降
ステップ 2: Xcode プロジェクトを作成して Places SDK for iOS をインストールする
Swift Package Manager
Places SDK for iOS は、 Swift Package Manager を介してインストールできます。SDK を追加するには、既存の Places SDK for iOS の依存関係をすべて削除してください。
SDK を新規または既存のプロジェクトに追加する手順は次のとおりです。
- 
      Xcode projectまたはworkspaceを開き、[File] > [Add Package Dependencies] に移動します。
- URL として https://github.com/googlemaps/ios-places-sdk を入力し、Enter キーを押してパッケージをプルし、[パッケージを追加] をクリックします。
- 
      特定の versionをインストールするには、[依存関係ルール] フィールドをバージョンベースのオプションのいずれかに設定します。新しいプロジェクトの場合は、最新バージョンを指定して [Exact Version] オプションを使用することをおすすめします。完了したら、[パッケージを追加] をクリックします。
- [Choose Package Products] ウィンドウで、GooglePlaces、GooglePlacesSwift、またはその両方が指定したメイン ターゲットに追加されることを確認します。完了したら、[パッケージを追加] をクリックします。非推奨の GitHub URL から Google Places Swift を更新する場合重要: バージョン 0.3.0 以降、Google Places Swift にアクセスするための GitHub URL が変更されました。古い URL( https://github.com/googlemaps/ios-places-swift-sdk)からアクセスしたバージョンの GooglePlacesSwift を更新する場合は、Xcode のパッケージ依存関係セクションから削除します。
- インストールを確認するには、ターゲットの [全般] ペインに移動します。[Frameworks, Libraries, and Embedded Content] に、インストールされているパッケージが表示されます。プロジェクト ナビゲータの [Package Dependencies] セクションで、パッケージとそのバージョンを確認することもできます。
既存のプロジェクトの package を更新する手順は次のとおりです。
- 
    Xcode で、[File] > [Packages] > [Update To Latest Package Versions] に移動します。
    非推奨の GitHub URL から Google Places Swift を更新する場合重要: バージョン 0.3.0 以降、Google Places Swift にアクセスするための GitHub URL が変更されました。古い URL( https://github.com/googlemaps/ios-places-swift-sdk)からアクセスした GooglePlacesSwift のバージョンを更新する場合は、Xcode のパッケージ依存関係セクションから削除します。
- インストールを確認するには、プロジェクト ナビゲータの [パッケージの依存関係] セクションに移動して、パッケージとそのバージョンを確認します。
手動でインストールした既存の Places SDK for iOS を削除する手順は次のとおりです。
- 
          Xcode プロジェクトの構成設定で、[フレームワーク、ライブラリ、埋め込みコンテンツ] を見つけます。マイナス記号(-)を使用して、次のフレームワークを削除します。
          - GooglePlaces.xcframework
- GooglePlacesSwift.xcframework
 
- 
          Xcode プロジェクトの最上位ディレクトリから、GooglePlacesバンドルを削除します。
手動インストール
このガイドでは、Places SDK for iOS と Places Swift SDK for iOS を含む XCFrameworks をプロジェクトに手動で追加し、Xcode でビルドを構成する方法を説明します。XCFramework は、Apple シリコンを使用するマシンなど、複数のプラットフォームで使用できるバイナリ パッケージです。Places SDK for iOS、Places Swift SDK for iOS、またはその両方を追加できます。
- 次の SDK バイナリ ファイルとリソース ファイルをダウンロードします。
- Places Swift SDK for iOS をインストールする場合は、次のファイルをインストールします。
- ファイルを抽出して、XCFramework とリソースにアクセスします。
- Xcode を起動し、既存のプロジェクトを開くか、新しいプロジェクトを作成します。iOS アプリを初めて開発する場合は、新規プロジェクトの作成時に iOS アプリ テンプレートを選択してください。
- プロジェクトから以前のリリースの Maps バンドルをすべて削除します。
- 
          [全般] タブを開きます。次の XCFramework を [Frameworks, Libraries, and Embedded Content] の下のプロジェクトにドラッグします。[埋め込まない] を選択してください。
          - GooglePlaces.xcframework
 - GooglePlacesSwift.xcframework
 
- 
          ダウンロードした GooglePlacesResources から Xcode プロジェクトの最上位ディレクトリに GooglePlaces.bundleをコピーします。プロンプトが表示されたら、[ Copy items into destination group's folder] を選択してください。
 Places Swift SDK をインストールする場合は、ダウンロードした GooglePlacesSwiftResources からGooglePlacesSwift.bundleをコピーして、Xcode プロジェクトの最上位ディレクトリに貼り付けます。プロンプトが表示されたら、[Copy items into destination group's folder] を選択してください。
- プロジェクト ナビゲータで目的のプロジェクトを選択し、アプリのターゲットを選択します。
- 
          [Build Phases] タブを開きます。[Link Binary with Libraries] 内に次のフレームワークとライブラリを追加します。
- CoreGraphics.framework
- CoreLocation.framework
- libc++.tbd
- libz.tbd
- QuartzCore.framework
- UIKit.framework
 
- 
          (特定のターゲットではなく)プロジェクトを選択して、[Build Settings] タブを開きます。[Linking - General -> Other Linker Flags] セクションで、[Debug] と [Release] に -ObjCを追加します。これらの設定が表示されない場合は、[Build Settings] バーのフィルタを [Basic] から [All] に変更します。
CocoaPods
Places SDK for iOS と Places Swift SDK for iOS は、CocoaPod ポッド(GooglePlaces と GooglePlacesSwift)として提供されています。
CocoaPods は、Swift と Objective-C の Cocoa プロジェクトで依存関係を管理するためのオープンソース ツールです。CocoaPods ツールがない場合は、ターミナルから以下のコマンドを実行して、macOS 上に CocoaPods ツールをインストールします。詳しくは、CocoaPods スタートガイドをご覧ください。
sudo gem install cocoapods
SDK とその依存関係をインストールする Podfile を作成します。
- Xcode プロジェクトをまだ作成していない場合は、ここで作成してローカルマシンに保存します(iOS アプリを初めて開発する場合は、新規プロジェクトの作成時に iOS アプリ テンプレートを選択してください。
- プロジェクトのディレクトリに、Podfileという名前のファイルを作成します。このファイルでプロジェクトの依存関係を定義します。
- Podfileを編集して、依存関係とそのバージョンを追加します。アプリケーションのターゲット名と- GooglePlacesPod と- GooglePlacesSwiftPod の名前を指定する例を次に示します。- source 'https://github.com/CocoaPods/Specs.git' platform :ios, '16.0' target 'YOUR_APPLICATION_TARGET_NAME_HERE' do pod 'GooglePlaces', '10.4.0' pod 'GooglePlacesSwift', '10.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コマンドを実行します。これにより、- Podfileで指定されたすべての API が最新バージョンに更新されます。
ステップ 3: アプリに API キーを追加する
以下の例で YOUR_API_KEY とある箇所は、実際の API キーに置き替えてください。
GooglePlacesSwift
次のように、API キーを AppDelegate.swift に追加します。
- 次の import ステートメントを追加します。import GooglePlacesSwift 
- 次のコードを application(_:didFinishLaunchingWithOptions:)メソッドに追加し、「YOUR_API_KEY」YOUR_API_KEYをお客様の API キーに置き換えます。PlacesClient.provideAPIKey("YOUR_API_KEY") 
Swift
次のように、API キーを AppDelegate.swift に追加します。
- 次の import ステートメントを追加します。import GooglePlaces 
- 次のコードを application(_:didFinishLaunchingWithOptions:)メソッドに追加し、「YOUR_API_KEY」YOUR_API_KEYをお客様の API キーに置き換えます。GMSPlacesClient.provideAPIKey("YOUR_API_KEY") 
Objective-C
次のように、API キーを AppDelegate.m に追加します。
- 次の import ステートメントを追加します。@import GooglePlaces; 
- 次のコードを application:didFinishLaunchingWithOptions:メソッドに追加し、「YOUR_API_KEY」YOUR_API_KEYをお客様の API キーに置き換えます。[GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"]; 
ステップ 4(省略可): Apple のプライバシー マニフェスト ファイルを検査する
Apple は、App Store のアプリに対してアプリのプライバシーに関する詳細情報を求めています。最新情報と詳細については、Apple App Store のプライバシーの詳細ページをご覧ください。
Apple プライバシー マニフェスト ファイルは、SDK のリソース バンドルに含まれています。プライバシー マニフェスト ファイルが含まれていることを確認し、その内容を検査するには、アプリのアーカイブを作成し、そのアーカイブからプライバシー レポートを生成します。
次のステップ
- コードの作成を開始します。おすすめの出発点は、ユーザーの現在地を取得するスターター アプリを実装することです。
- プロジェクトの設定が完了したら、サンプルアプリを試すことができます。
- App Check を使用して API キーを保護する。