Google Maps Platform チームは定期的に SDK を更新し、新機能の追加、バグの修正、パフォーマンスの改善を行っています。このページでは、モバイル SDK への依存関係を管理する方法について説明します。
リンクするバージョンの選び方
-
ミッション クリティカルなアプリの場合、使用しているメジャー バージョンの最新のドットリリース(X.*)にリンクし、1 年ごとに新しいメジャー バージョンにアップグレードします。
年間を通じてアプリケーションの新しいバージョンをリリースするにあたり、Maps SDK for iOS の新しいドット バージョンの使用を開始できます。新しいドット バージョンには下位互換性があるため、これによってアプリケーションのアップデートが必要となることはありません。
メリット:
- Maps SDK for iOS に問題が見つかった場合、モバイル サポート ポリシーに従い、メジャー バージョンの初回リリースから 12 か月間は下位互換性のある方法で修正が提供されます。修正のメリットを得るために、incompatible互換性のない SDK バージョンへのアップグレードを急ぐ必要はありません。
- 最新の SDK バージョンをベースにアプリを制作すれば、最新の改良点や機能の導入も容易です。
- SDK のアップデートに合わせてアプリケーションの調整、書き換え、テスティングが必要になることがありますが、SDK の最新メジャー バージョンの年次差分アップデートに対応するだけであれば、複数のメジャー バージョン リリースで導入された下位互換性のない変更に対応するよりも軽い作業で済むことが予想されます。
重要性の低いアプリの場合、任意の修正済みバージョンにリンクします。その修正済みバージョンのサポート終了の案内を受けたら、12 か月以内にアプリのコードをアップデートしてユーザーに提供開始する必要があります。
メリット:
- メンテナンス作業の頻度を下げられます。
- アプリの新バージョンで、搭載 OS の古いモバイル デバイスへの対応を維持できる期間が延びます(新しい SDK バージョンにアップグレードする必要が生じるまで)。
モニタリング対象メールアドレスを持つプロジェクト オーナー様には、各プロジェクトに影響する変更を通知で事前にお知らせしています。メジャー アップデート、サービス終了、その他の変更に関する最新情報を把握する方法
インストール
オプティミスティック演算子(~>
)を使用する代わりに、常に依存関係にバージョン番号を指定します。そうしないと、ビルドが予測不可能で繰り返し不可能な場合があるためです。Maps SDK for iOS はセマンティック バージョニングに準拠しており、新しいメジャー バージョン リリースには互換性を破る変更が含まれています。
Podfile 構文を使用した Podfile 依存関係の例:
source 'https://github.com/CocoaPods/Specs.git' platform :ios, '14.0' target 'YOUR_APPLICATION_TARGET_NAME_HERE' do pod 'GoogleMaps', '8.3.1' end
メンテナンスとアップグレード
最新の改善を使用してビルドするには、定期的に新しいバージョンを確認し、バージョン仕様を更新してください。新しいメジャー バージョンに更新する場合は、下位互換性のない変更とコードの更新方法について、リリースノートをご覧ください。
Cocoapods の使用
ターミナルを開いて、
Podfile
を含むディレクトリに移動します。cd <path-to-project>
pod outdated
を実行して、Maps SDK for iOS の新しいバージョンが利用可能かどうかを確認します。- 新しいバージョンの SDK が見つかった場合は、その新しいバージョンで
Podfile
を更新します。Podfile
で特定のバージョンを設定する方法については、Pod バージョンの指定をご覧ください。 pod update
を実行します。- アップグレードに伴い、必要な変更を行います。各リリースにおける変更点のリストについては、リリースノートをご覧ください。
- [Product] > [Clean]、[Product] > [Build] の順に選択して、プロジェクトをクリーンアップして再ビルドします。
手動
SDK のインストールで最新のソースファイルへのリンクを取得します。
Google Cloud のプロジェクト オーナーは、新しいバージョンをポーリングすることに加えて、プロジェクトに影響する可能性がある下位互換性のない変更に関するメールを受信します。下位互換性のない変更について事前に通知を受け取るには、モニタリング対象メールアドレスを使用して、プロジェクトごとにオーナーのロールを割り当てます。