นโยบายสำหรับ Places SDK สำหรับ iOS

เอกสารนี้แสดงข้อกำหนดเฉพาะสำหรับแอปพลิเคชันทั้งหมดที่พัฒนาด้วย Places SDK สำหรับ iOS รวมถึงบริการเติมข้อความอัตโนมัติของสถานที่ซึ่งเป็นส่วนหนึ่งของ API นั้น ดูข้อมูลทั่วไปเพิ่มเติมสําหรับนักพัฒนา Google Maps ได้ในข้อกําหนดในการให้บริการของ Google Maps Platform

ให้ข้อกำหนดในการใช้งานและนโยบายความเป็นส่วนตัว

หากคุณพัฒนา Places SDK สำหรับแอปพลิเคชัน iOS คุณต้องเผยแพร่ข้อกำหนดในการใช้งานและนโยบายความเป็นส่วนตัวกับแอปพลิเคชันของคุณ ซึ่งเป็นไปตามหลักเกณฑ์ที่ระบุไว้ในข้อตกลงกับ Google

  • ข้อกำหนดในการใช้งานและนโยบายความเป็นส่วนตัวต้องเผยแพร่ต่อสาธารณะ
  • คุณต้องระบุในข้อกำหนดในการให้บริการของแอปพลิเคชันว่าเมื่อใช้แอปพลิเคชัน ผู้ใช้จะต้องปฏิบัติตามข้อกำหนดในการให้บริการของ Google
  • คุณต้องแจ้งให้ผู้ใช้ทราบในนโยบายความเป็นส่วนตัวว่าคุณกำลังใช้ Google Maps API และผสานรวมโดยอ้างอิงนโยบายความเป็นส่วนตัวของ Google

การแสดงข้อกำหนดในการใช้งานและนโยบายความเป็นส่วนตัวที่แนะนำจะขึ้นอยู่กับแพลตฟอร์มของแอปพลิเคชัน

แอปพลิเคชันบนอุปกรณ์เคลื่อนที่

หากจะพัฒนาแอปบนอุปกรณ์เคลื่อนที่ ขอแนะนำให้ระบุลิงก์ไปยัง ข้อกำหนดในการใช้งานและนโยบายความเป็นส่วนตัวในหน้าดาวน์โหลด ของแอปพลิเคชัน ใน App Store ที่เกี่ยวข้องและในเมนูการตั้งค่าแอปพลิเคชัน

เว็บแอปพลิเคชัน

หากคุณต้องการพัฒนาเว็บแอปพลิเคชัน ขอแนะนำให้คุณระบุลิงก์ไปยังข้อกำหนดในการใช้งานและนโยบายความเป็นส่วนตัวในส่วนท้ายของเว็บไซต์

การดึงข้อมูลล่วงหน้า การแคช หรือการจัดเก็บเนื้อหา

แอปพลิเคชันที่ใช้ Places SDK สำหรับ iOS จะต้องปฏิบัติตามเงื่อนไขในข้อตกลงระหว่างคุณกับ Google ภายใต้ข้อกำหนดในข้อตกลงของคุณ คุณจะต้องไม่ดึงข้อมูลล่วงหน้า จัดทำดัชนี จัดเก็บ หรือแคชเนื้อหาใดๆ ยกเว้นภายใต้เงื่อนไขที่จำกัดตามที่ระบุไว้ในข้อกำหนด

โปรดทราบว่ารหัสสถานที่ที่ใช้ระบุสถานที่โดยไม่ซ้ำกันจะได้รับการยกเว้นจากข้อจำกัดการแคช ระบบจะแสดงรหัสสถานที่ในช่อง "place_id" ใน Places SDK สำหรับคำตอบของ iOS ดูวิธีบันทึก รีเฟรช และจัดการรหัสสถานที่ได้ในคำแนะนำเกี่ยวกับรหัสสถานที่

การแสดง Places SDK สำหรับผลลัพธ์ของ iOS

คุณสามารถแสดงผลลัพธ์ของ Places SDK สำหรับ iOS บน Google Maps หรือโดยไม่มีแผนที่ก็ได้ หากคุณต้องการแสดงผลลัพธ์ของ Places SDK สำหรับ iOS บนแผนที่ ผลการค้นหาเหล่านี้จะต้องแสดงบน Google Maps ห้ามใช้ Places SDK สำหรับข้อมูล iOS บนแผนที่ที่ไม่ใช่แผนที่ของ Google

หากแอปพลิเคชันของคุณแสดงข้อมูลบน Google Maps โลโก้ Google จะรวมอยู่ด้วยและไม่สามารถเปลี่ยนแปลงได้ แอปพลิเคชันที่แสดงข้อมูล Google บนหน้าจอเดียวกับ Google Maps ไม่จำเป็นต้องระบุแหล่งที่มาเพิ่มเติมให้กับ Google

หากแอปพลิเคชันแสดงข้อมูลบนหน้าเว็บหรือมุมมองที่ไม่แสดง Google Maps ด้วย คุณต้องแสดงโลโก้ Google พร้อมข้อมูลดังกล่าว เช่น หากแอปพลิเคชันแสดงข้อมูลใน Google บนแท็บหนึ่ง และ Google Maps ที่มีข้อมูลนั้นอยู่ในแท็บอื่น แท็บแรกต้องแสดงโลโก้ Google หากแอปพลิเคชันใช้ช่องค้นหาทั้งที่มีหรือไม่มีการเติมข้อความอัตโนมัติ โลโก้ต้องแสดงในบรรทัด

โลโก้ Google ควรวางอยู่ที่มุมซ้ายล่างของแผนที่ พร้อมข้อมูลการระบุแหล่งที่มาอยู่ที่มุมขวาล่าง ทั้ง 2 อย่างนี้ควรอยู่ในแผนที่โดยนำเสนอในภาพรวม และไม่อยู่ใต้แผนที่หรือที่อื่นในแอปพลิเคชัน ตัวอย่างแผนที่ต่อไปนี้แสดงโลโก้ Google ที่ด้านซ้ายล่างของแผนที่ และการระบุแหล่งที่มาที่ด้านล่างขวา

ตำแหน่งการระบุแหล่งที่มาของนโยบาย

ไฟล์ ZIP ต่อไปนี้มีโลโก้ Google ในขนาดที่ถูกต้องสำหรับแอปพลิเคชันบนเดสก์ท็อป, Android และ iOS คุณต้องไม่ปรับขนาดหรือแก้ไขโลโก้ ไม่ว่าในลักษณะใดก็ตาม

ดาวน์โหลด: google_logo.zip

อย่าแก้ไขการระบุแหล่งที่มา อย่าลบ ปิดบัง หรือครอบตัดข้อมูลการระบุแหล่งที่มา คุณไม่สามารถใช้โลโก้ Google ในบรรทัดได้ (เช่น "แผนที่เหล่านี้มาจาก [Google_logo]")

รักษาการระบุแหล่งที่มาไว้ใกล้เคียง หากใช้ภาพหน้าจอของภาพ Google ที่ไม่ใช่การฝังโดยตรง ให้ระบุการระบุแหล่งที่มามาตรฐานตามที่ปรากฏในรูปภาพด้วย หากจำเป็น คุณอาจปรับแต่งรูปแบบและตำแหน่งของข้อความระบุแหล่งที่มา ตราบใดที่ข้อความนั้นอยู่ในระยะใกล้ของเนื้อหาและผู้อ่านหรือผู้อ่านทั่วไปอ่านออกได้ง่าย คุณไม่สามารถย้ายการระบุแหล่งที่มาออกจากเนื้อหา เช่น ท้ายหนังสือ เครดิตของไฟล์หรือรายการ หรือส่วนท้ายของเว็บไซต์

รวมผู้ให้บริการข้อมูลบุคคลที่สาม ข้อมูลและรูปภาพบางส่วนในผลิตภัณฑ์การทำแผนที่มาจากผู้ให้บริการรายอื่นที่ไม่ใช่ Google หากใช้ภาพดังกล่าว ข้อความการแสดงที่มาของคุณต้องระบุชื่อ "Google" และผู้ให้บริการข้อมูลที่เกี่ยวข้อง เช่น "ข้อมูลแผนที่: Google, Maxar Technologies" หากมีผู้ให้บริการข้อมูลบุคคลที่สามที่อ้างอิงด้วยภาพดังกล่าว การใส่เพียงคำว่า "Google" หรือโลโก้ของ Google นั้นไม่ใช่การระบุแหล่งที่มาที่เหมาะสม

หากคุณใช้ Google Maps Platform บนอุปกรณ์ที่การแสดงการระบุแหล่งที่มาใช้งานไม่ได้ โปรด ติดต่อทีมฝ่ายขายของ Google เพื่อพูดคุยเกี่ยวกับใบอนุญาตที่เหมาะสมกับกรณีการใช้งานของคุณ

ข้อกำหนดในการระบุแหล่งที่มาอื่นๆ

การระบุแหล่งที่มาไปยังผู้ให้บริการบุคคลที่สามประกอบด้วยเนื้อหาและลิงก์ที่คุณ ต้องแสดงต่อผู้ใช้ในรูปแบบที่ให้ไว้ Google ขอแนะนำให้แอปของคุณแสดงข้อมูลนี้ใต้รายละเอียดสถานที่

การระบุแหล่งที่มาของบุคคลที่สามที่ API แสดงผลจะไม่รวมการระบุแหล่งที่มาของ Google ไว้ด้วย คุณต้องใส่การระบุแหล่งที่มานี้ด้วยตัวเองตามที่อธิบายไว้ในการแสดงโลโก้และการระบุแหล่งที่มาของ Google

ทำตามคำแนะนำเหล่านี้เพื่อดึงข้อมูลการระบุแหล่งที่มาของบุคคลที่สามสำหรับสถานที่แห่งเดียวหรือหลายแห่ง

ดึงข้อมูลแหล่งที่มาของสถานที่แห่งเดียว

เมื่อดึงข้อมูลสถานที่โดยการดูสถานที่ด้วยรหัส คุณสามารถดึงข้อมูลการระบุแหล่งที่มาของสถานที่นั้นจากพร็อพเพอร์ตี้ attributions ได้ใน GMSPlace

attributions ระบุเป็นออบเจ็กต์ NSAttributedString

ดึงข้อมูลการระบุแหล่งที่มาของคอลเล็กชันสถานที่

หากแอปแสดงข้อมูลที่ได้จากการขอสถานที่ปัจจุบันของอุปกรณ์ แอปต้องแสดงการระบุแหล่งที่มาของบุคคลที่สามสำหรับรายละเอียดสถานที่ที่แสดง คุณดึงข้อมูลการระบุแหล่งที่มาของทุกตำแหน่งที่ดึงข้อมูลในคำขอได้จากพร็อพเพอร์ตี้ attributions ในวันที่ GMSPlaceLikelihoodList

attributions ระบุไว้เป็นออบเจ็กต์ NSAttributedString ซึ่งเข้าถึงและแสดงในลักษณะเดียวกับ attributions ได้ในที่เดียวตามที่อธิบายไว้ด้านบน

แสดงที่มาของรูปภาพ

หากแอปแสดงรูปภาพ คุณต้องแสดง 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 เราขอแนะนำให้คุณใส่รูปภาพของผู้เขียนและลิงก์ไปยังโปรไฟล์ของผู้เขียนด้วย รูปภาพต่อไปนี้แสดงตัวอย่างรีวิวสวนสาธารณะ

การแสดงแหล่งที่มาของผู้เขียน

นอกจากนี้ 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 และตั้งค่าเมธอด shouldInteractWithURL ของ UITextViewDelegate ให้แสดงผล 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;
}
    

ตัวอย่างการระบุแหล่งที่มาของบุคคลที่สาม

การระบุแหล่งที่มาของบุคคลที่สามมักประกอบด้วยข้อความที่มีลิงก์ เช่น

ข้อมูลโดยบริษัทตัวอย่าง

ในตัวอย่างข้างต้น ช่วงข้อความบริษัทตัวอย่างครอบคลุมด้วยแอตทริบิวต์ NSLink

หลักเกณฑ์ด้านรูปแบบสำหรับการระบุแหล่งที่มาของ Google

ต่อไปนี้คือหลักเกณฑ์ด้านรูปแบบสำหรับการระบุแหล่งที่มาของ Google ใน CSS และ HTML หากคุณไม่สามารถใช้โลโก้ Google ที่ดาวน์โหลดได้

พื้นที่ว่าง

พื้นที่ว่างรอบๆ โลโก้ตัวเต็มควรเท่ากับหรือมากกว่าความสูงของ "G" ใน Google

พื้นที่ว่างระหว่างข้อความระบุแหล่งที่มาและโลโก้ Google ควรเป็นครึ่งหนึ่งของความกว้างของ "G"

ความอ่านง่าย

บรรทัดชื่อผู้เขียนควรชัดเจน อ่านออกได้ง่าย และมีรูปแบบสีที่ถูกต้องสำหรับพื้นหลังที่ระบุ โปรดตรวจสอบให้แน่ใจว่ามีคอนทราสต์เพียงพอสำหรับรูปแบบโลโก้ที่คุณเลือก

สี

ใช้ข้อความ Google Material Gray 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 ตัวอย่าง

เมื่อใช้กับข้อความ "Google" ต่อไปนี้ 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;