Places SDK for iOS 政策

本文件列出使用 Places SDK for iOS 開發的所有應用程式的專屬規定,包括該 API 中的 Place Autocomplete 服務。如需 Google 地圖開發人員適用的其他一般資訊,請參閱《Google 地圖平台服務條款》。

提供使用條款和隱私權政策

如果您開發的是 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 結果

您可以在 Google 地圖上顯示 Places SDK for iOS 結果,或是在沒有地圖的情況下顯示。如果您想要在地圖上顯示 Places SDK for iOS 結果,則必須在 Google 地圖上顯示這些結果。禁止在非 Google 地圖上使用 Places SDK for iOS 資料。

如果應用程式在 Google 地圖上顯示資料,該元素就會納入 Google 標誌,且不得變更。如果應用程式顯示 Google 資料時,與 Google 地圖在同一畫面,就不必進一步註明出處為 Google 的資訊。

如果應用程式顯示資料時,網頁或畫面上未一併顯示 Google 地圖,這些資料就須標註 Google 標誌。舉例來說,假使應用程式在一個分頁上顯示 Google 資料,在另一個分頁顯示含有這些資料的 Google 地圖,那麼第一個分頁就須顯示 Google 標誌。假如應用程式提供搜尋欄位 (不論是否使用自動完成功能),則欄位內都需要顯示這個標誌。

Google 標誌應置於地圖左下角,出處資訊則應放在右下角,兩者都要完整呈現在地圖上,不可出現在地圖下方或應用程式內的其他位置。在下列範例地圖中,Google 標誌位於地圖左下角,出處資訊則位於右下角。

政策出處資訊位置

以下 ZIP 檔案內含 Google 標誌,大小適用於電腦版、Android 版和 iOS 版應用程式。請勿調整或修改標誌大小。

下載檔案:google_logo.zip

請勿修改出處,請勿移除、遮蓋或裁剪作者資訊資訊。但不能內嵌 Google 標誌 (例如「這些地圖來自 [Google_logo]」)。

確保出處資訊靠近內容。如果不是用直接嵌入的方式加入 Google 圖像螢幕截圖,則標註的標準出處資訊應與該圖片顯示的相同。必要時,您可以自訂出處資訊文字的樣式和位置,只要把握基本原則,確保文字靠近內容,且能讓一般觀眾/讀者清楚易懂即可。請不要將出處資訊移到內容區域以外的位置,例如放到書尾、檔案或節目的製作/演出人員名單,或是網站頁尾。

加入第三方資料供應商。我們地圖產品中的部分資料和圖片並非來自 Google 以外的供應商。使用這類圖像時,作者資訊的文字必須包含「Google」這個名稱和相關資料供應商,例如「地圖資料:Google,Maxar Technologies」。若第三方資料供應商引用圖像,只納入「Google」或 Google 標誌就不適當。

如果您在沒有實際歸因顯示的裝置上使用 Google 地圖平台,請 與 Google 銷售團隊聯絡,討論適合您用途的授權。

其他出處資訊相關規定

寄給第三方供應商的內容和連結必須採用系統提供的格式,讓您向使用者顯示。Google 建議您的應用程式在地點詳細資料下方顯示這項資訊。

API 傳回的第三方歸因「不」包含 Google 歸因。您必須按照「顯示 Google 標誌與作者資訊」一文的說明,自行加入這項作者資訊。

請按照下列操作說明,擷取單一地點或一組地點的第三方作者資訊。

擷取單一地點的屬性

如果您透過 ID 取得地點來擷取地點,可以從 GMSPlace 上的 attributions 屬性擷取該地點的作者資訊。

系統會以 NSAttributedString 物件的形式提供 attributions

擷取一組地點的屬性

如果應用程式顯示透過要求裝置目前地點取得的資訊,就必須為所顯示地點詳細資料的第三方作者資訊。您可以從 GMSPlaceLikelihoodListattributions 屬性擷取要求擷取的所有地點歸因資料。

attributions 是以 NSAttributedString 物件的形式提供,因此存取及顯示內容的方式與在單一位置的 attributions 相同,如上文所述。

顯示相片出處資訊

如果應用程式會顯示相片,您就必須為每張包含attributionsauthorAttributions的相片顯示任何資訊。

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 物件最多可包含五則評論,其中每則評論都以 GMSPlaceReview 物件表示。您也可以選擇在應用程式中顯示這些評論。

顯示 Google 使用者提供的評論時,請務必將作者姓名置於附近。如果 GMSPlaceReview 物件的作者歸因欄位中有該欄位,建議您一併加入作者的相片和個人資料連結。下圖為公園評論的範例:

顯示作者出處資訊

Google 也建議您顯示使用者評論的排序方式。

如要查看評論,請按照下列步驟操作:

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 上設定委派,並設定 UITextViewDelegateshouldInteractWithURL 方法以傳回 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」寬度的一半。

易讀性

署名必須清晰、易讀,並以特定背景的合適顏色變化形式顯示。採用的標誌版本配色上須有足夠的對比。

顏色

如果是白色或淺色背景,文字顏色使用 Google 礦石灰 700,黑色色調最高介於 0% 到 40%。

Google
#5F6368
RGB 95 99 104
HSL 213 5 39
HSB 213 9 41

如果是深色背景,且為攝影相片或素面花樣,請使用白色文字標註署名和出處資訊。

Google
#FFFFFF
RGB 255 255 255
HSL 0 0 100
HSB 0 0 100

字型

請使用 Roboto 字型。

CSS 範例

將下列 CSS 套用至「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;