このドキュメントでは、Places SDK for iOS を使用して開発されたすべてのアプリケーションに固有の要件(この API の一部である Place Autocomplete サービスを含む)を示します。Google マップ デベロッパー向けの一般的な情報については、Google Maps Platform 利用規約をご覧ください。
利用規約とプライバシー ポリシーを明示する
Places SDK for iOS アプリケーションを開発する場合は、Google との契約に定められている次のガイドラインに準拠した利用規約とプライバシー ポリシーをアプリケーションとともに公開する必要があります。
- 利用規約とプライバシー ポリシーは一般公開されていること。
- アプリケーションの利用規約に、当該アプリケーションを使用するユーザーには Google の利用規約が適用される旨が明示的に記載されていること。
- プライバシー ポリシーで、Google Maps API を使用していることをユーザーに伝え、参照として Google プライバシー ポリシーを組み込んでいること。
利用規約とプライバシー ポリシーをどこに組み込むべきかは、アプリケーションのプラットフォームによって異なります。
モバイルアプリ
モバイルアプリを作成している場合は、利用規約とプライバシー ポリシーのリンクを、関連するアプリストアのダウンロード ページとアプリの設定メニューに組み込むことをおすすめします。
ウェブ アプリケーション
ウェブ アプリケーションを作成している場合は、利用規約とプライバシー ポリシーへのリンクをウェブサイトのフッターに組み込むことをおすすめします。
コンテンツのプリフェッチ、キャッシュ保存、保存
Places SDK for iOS を使用するアプリケーションには、Google との契約の条件が適用されます。本契約の条項に従い、コンテンツのプリフェッチ、インデックス登録、保存、キャッシュ保存は認められません(例外: 規約に記載されている限定的条件下)。
ただし、プレイスを一意に識別するために使用されるプレイス ID は、キャッシング制限の適用対象外のため、プレイス ID は、Places SDK for iOS のレスポンスの place_id
フィールドで返されます。プレイス ID を保存、更新、管理する方法については、プレイス ID ガイドをご覧ください。
Places SDK for iOS の結果を表示する
Places SDK for iOS の結果は、Google マップで表示するか地図に表示せずに確認できます。Places SDK for iOS の結果を地図に表示する場合は、Google マップに表示する必要があります。Google マップ以外の地図で Places SDK for iOS のデータを使用することは禁止されています。
Google のロゴと帰属を表示する
アプリケーションで Google マップにデータを表示する場合は、Google ロゴが表示されますが、それに変更を加えることは禁止されています。Google マップと同じ画面に Google データを表示するアプリケーションでは、Google に対するそれ以上の帰属表示は不要です。
データを Google マップなしでページまたはビューに表示するアプリケーションでは、データとともに Google ロゴを表示する必要があります。たとえば、あるタブに Google のデータを表示し、別のタブにそのデータと Google マップを表示するアプリケーションであれば、最初のタブに Google ロゴを表示する必要があります。アプリケーションで、オートコンプリートの有無にかかわらず検索フィールドを使用する場合、ロゴをその同じ行かそのすぐ側に表示する必要があります。
Google のロゴは地図の左下に配置し、帰属表示は右下に配置します。どちらも地図の下やアプリケーション内の別の場所ではなく、全体が地図内に表示されるようにしてください。次の地図の例では、地図の左下に Google のロゴ、右下に帰属表示が配置されています。
明るい背景向け | 暗い背景向け |
---|---|
次の zip ファイルには、パソコン版、Android 版、iOS 版の各アプリケーションに適したサイズの Google ロゴが収められています。いかなる方法でも、ロゴのサイズを変更したり、ロゴに変更を加えたりすることはできません。
ダウンロード: google_logo.zip
帰属に変更を加えないでください。帰属情報を削除したり、隠したり、切り抜いたりしないでください。Google ロゴを文章の中(例: 「これらの地図は [Google_logo] に属します」)で使用することはできません。
帰属表示は近くで行う。直接埋め込み以外で Google 画像のスクリーンショットを使用する場合は、画像に表示される標準の帰属情報を含めます。帰属表示の文言は、必要に応じてスタイルと配置場所をカスタマイズできます。ただし、文言がコンテンツと近く、平均的な閲覧者や読者が判読できる必要があります。帰属表示をコンテンツから離すこと(書籍の巻末、ファイルや番組のクレジット、ウェブサイトのフッターなど)はできません。
第三者データ プロバイダ名を含めます。Google のマッピング サービスのデータと画像の中には、Google 以外のプロバイダから提供されているものがあります。このような画像を使用する場合、帰属情報の文言には「Google」の名称と関連するデータ プロバイダ名(「地図データ: Google, Maxar Technologies」など)を記載する必要があります。画像に第三者データ プロバイダ名が表示されている場合、「Google」または Google ロゴのみを表示しただけでは帰属表示として適切ではありません。
帰属表示が現実に行えないデバイスで Google Maps Platform を使用している場合は、Google セールスチームにお問い合わせのうえ、ユースケースに適したライセンスについてご相談ください。
帰属表示に関するその他の要件
サードパーティ プロバイダの属性には、提供された形式でユーザーに表示する必要があるコンテンツとリンクが含まれます。アプリでは、プレイスの詳細の下にこの情報を表示することをおすすめします。
API から返されるサードパーティ アトリビューションには、Google アトリビューションは含まれません。Google のロゴと帰属を表示するの説明に従って、この帰属は手動で含める必要があります。
1 つ、または複数の場所のサードパーティ属性を取得するには、次の説明に従ってください。
1 つの場所の属性を取得する
ID で場所を取得して場所を取得する場合は、GMSPlace
の attributions
プロパティからその場所の帰属情報を取得できます。
attributions
は NSAttributedString
オブジェクトとして提供されます。
複数の場所の属性を取得する
端末の現在地をリクエストして取得した情報を表示するアプリの場合、アプリは表示されたプレイスの詳細に関するサードパーティ属性を表示する必要があります。リクエストで取得されたすべての場所の属性は、
GMSPlaceLikelihoodList
の attributions
プロパティから取得できます。
attributions
は NSAttributedString
オブジェクトとして提供されます。アクセス方法や表示方法は、上記の 1 つの場所の attributions
と同じです。
検索結果のアトリビューション
欧州では、Google の純粋なランキングを使用する場合、検索結果のランキングを決定する主な要素とその重み付けを説明する説明テキストを、1 クリック以内に表示する必要があります。説明テキスト:
ヘッダー: 検索結果について
本文: Google マップで指定した場所の付近の店舗などを検索すると、ローカル検索の結果が表示されます。検索結果の精度を高めるため、ローカル検索の結果は複数の要素(主に関連性、距離、知名度)に基づいて生成されます。
ボタン 1: 詳細
「詳細」というテキストは、ヘルプセンター記事にリンクする必要があります。
ボタン 2: OK
写真の帰属を表示する
アプリに写真を表示する場合は、写真が含まれている写真ごとに attributions
と authorAttributions
を表示する必要があります。
- アトリビューションにアクセスするには、
GMSPlacePhotoMetadata.attributions
を使用します。このプロパティはNSAttributedString
です。表示する帰属がない場合はnil
です。 - 作成者のアトリビューションにアクセスするには、
GMSPlacePhotoMetadata.authorAttributions
を使用します。このプロパティにはGMSPlaceAuthorAttribution
オブジェクトの配列が含まれます。
Swift
GMSPlacesClient.sharedClient().lookUpPhotosForPlaceID(placeID) { (photos, error) -> Void in if let error = error { // TODO: handle the error. print("Error: \(error.description)") } else { // Get attribution for the first photo in the list. if let photo = photos?.results.first { let attributions = photo.attributions } } }
Objective-C
[[GMSPlacesClient sharedClient] lookUpPhotosForPlaceID:placeID callback:^(GMSPlacePhotoMetadataList *_Nullable photos, NSError *_Nullable error) { if (error) { // TODO: handle the error. NSLog(@"Error: %@", [error description]); } else { // Get attribution for the first photo in the list. if (photos.results.count > 0) { GMSPlacePhotoMetadata *photo = photos.results.firstObject; NSAttributedString *attributions = photo.attributions; } } }];
クチコミを表示する
GMSPlace
オブジェクトには最大 5 つのクチコミを含めることができ、各クチコミは GMSPlaceReview
オブジェクトで表されます。アプリでのクチコミ表示は省略可です。
Google ユーザーが投稿したクチコミを表示する場合は、投稿者の名前を近くに配置する必要があります。GMSPlaceReview
オブジェクトの作成者の帰属表示フィールドで利用可能な場合は、作成者の写真とプロフィールへのリンクも含めることをおすすめします。次の図は、公園のレビューの例を示しています。
また、レビューの並べ替え方法をエンドユーザーに表示することをおすすめします。
レビューにアクセスするには:
Swift
// Define a Place ID. let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs" // Specify the place data types to return. let myProperties: [GMSPlaceProperty] = [.name, .website, .reviews] // Create the GMSFetchPlaceRequest object. let fetchPlaceRequest = GMSFetchPlaceRequest(placeID: placeID, placeProperties: myProperties) client.fetchPlaceWithRequest(fetchPlaceRequest: fetchPlaceRequest, callback: { (place: GMSPlace?, error: Error?) in if let error = error { print("An error occurred: \(error.localizedDescription)") return } if let place = place { let firstReview: GMSPlaceReview = place.reviews![0] // Use firstReview to access review text, authorAttribution, and other fields. } })
Objective-C
// Define a Place ID. NSString *placeID = @"ChIJV4k8_9UodTERU5KXbkYpSYs"; // Specify the place data types to return, including reviews. NSArray<GMSPlaceProperty *> *myProperties = @[GMSPlacePropertyName, GMSPlacePropertyWebsite,GMSPlacePropertyReviews]; GMSFetchPlaceRequest *fetchPlaceRequest = [[GMSFetchPlaceRequest alloc] initWithPlaceID:placeID placeProperties: myProperties]; [placesClient fetchPlaceWithRequest: fetchPlaceRequest, callback: ^(GMSPlace *_Nullable place, NSError *_Nullable error) { if (error) { // TODO: handle the error. NSLog(@"Error: %@", [error description]); } else { // Get first review. GMSPlaceReview *firstReview = [place reviews][0]; // Use firstReview to access review text, authorAttribution, and other fields. } }];
サードパーティの属性を表示する
サードパーティ プロバイダの属性は NSAttributedString
オブジェクトとして提供され、保持してユーザーに表示する必要があるコンテンツとリンクが含まれています。
属性のリンクを有効にする必要があるため、UITextView
で属性を表示することをおすすめします。
リンクを有効にするには、UITextView
にデリゲートを設定し、UITextViewDelegate
の shouldInteractWithURL
メソッドで YES
を返すように設定します。
Swift
... self.attributionTextView.delegate = self ... // MARK: - UITextViewDelegate func textView(textView: UITextView, shouldInteractWithURL URL: NSURL, inRange characterRange: NSRange) -> Bool { // Make links clickable. return true }
Objective-C
... self.attributionTextView.delegate = self; ... #pragma mark - UITextViewDelegate - (BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)url inRange:(NSRange)characterRange { // Make links clickable. return YES; }
サードパーティ属性の例
サードパーティの帰属表示は通常、リンク付きのテキストで構成されます。次に例を示します。
Example Company のリスティング
上記の例では、Example Company のテキスト範囲に NSLink
属性が適用されています。
Google 帰属のスタイル ガイドライン
以下は、ダウンロード可能な Google ロゴを使用できない場合の、CSS と HTML の Google 帰属表示のスタイル ガイドラインです。
クリアスペース
ロックアップ周りのクリアスペースは、Google の「G」の高さを最小サイズとして設定してください。
帰属情報のコピーと Google ロゴの間のスペースは、「G」の幅の半分にします。
判読しやすさ
バイラインは常に、はっきりと見やすく、背景色に適した色で表示する必要があります。選択したバリエーションのロゴに十分なコントラストを付けてください。
色
白または明るい色の背景では、黒の色合い(0~40%)の Google Material Gray 700 テキストを使用します。
#5F6368 RGB 95 99 104 HSL 213 5 39 HSB 213 9 41
背景が暗く、写真またはシンプルな図柄の上には、バイラインと帰属に白いテキストを使用します。
#FFFFFF RGB 255 255 255 HSL 0 0 100 HSB 0 0 100
フォント
Roboto フォントを使用します。
CSS の例
次の CSS を「Google」のテキストに適用すると、白または明るい背景に「Google」が適切なフォント、色、間隔でレンダリングされます。
font-family: Roboto; font-style: normal; font-weight: 500; font-size: 16px; line-height: 16px; padding: 16px; letter-spacing: 0.0575em; /* 0.69px */ color: #5F6368;