iOS के लिए स्थल SDK से जुड़ी नीतियां

इस दस्तावेज़ में, iOS के लिए Places SDK टूल की मदद से बनाए गए सभी ऐप्लिकेशन के लिए ज़रूरी शर्तों की जानकारी दी गई है. इनमें, उस एपीआई का हिस्सा Google Maps के डेवलपर के लिए, ज़्यादा सामान्य जानकारी Google Maps Platform की सेवा की शर्तों में मिल सकती है.

उपयोग की शर्तें और निजता नीति उपलब्ध कराएं

अगर आपने iOS ऐप्लिकेशन के लिए Places SDK टूल डेवलप किया है, तो आपको अपने ऐप्लिकेशन के साथ इस्तेमाल की शर्तें और निजता नीति उपलब्ध कराना होगा. यह ज़रूरी है कि ये शर्तें और नीति, Google के साथ आपके कानूनी समझौते में बताए गए दिशा-निर्देशों के मुताबिक हों:

  • इस्तेमाल की शर्तें और निजता नीति सार्वजनिक तौर पर उपलब्ध होनी चाहिए.
  • आपको अपने ऐप्लिकेशन के इस्तेमाल की शर्तों में साफ़ तौर पर यह बताना होगा कि आपके ऐप्लिकेशन का इस्तेमाल करने पर, उपयोगकर्ताओं को Google की सेवा की शर्तों का पालन करना होगा.
  • आपको अपनी निजता नीति में उपयोगकर्ताओं को यह बताना होगा कि आपने Google Maps API का इस्तेमाल किया है. साथ ही, Google की निजता नीति को रेफ़रंस के तौर पर शामिल करना होगा.

इस्तेमाल की शर्तें और निजता नीति को उपलब्ध कराने के लिए सुझाई गई जगह, आपके ऐप्लिकेशन के प्लैटफ़ॉर्म पर निर्भर करती है.

मोबाइल ऐप्लिकेशन

अगर कोई मोबाइल ऐप्लिकेशन डेवलप किया जा रहा है, तो हमारा सुझाव है कि आप ऐप्लिकेशन के डाउनलोड पेज पर, इस्तेमाल की शर्तों और निजता नीति का लिंक दें. यह लिंक, ऐप्लिकेशन स्टोर और ऐप्लिकेशन के सेटिंग मेन्यू में होना चाहिए.

वेब ऐप्लिकेशन

अगर कोई वेब ऐप्लिकेशन डेवलप किया जा रहा है, तो हमारा सुझाव है कि आप अपनी वेबसाइट के फ़ुटर में, इस्तेमाल की शर्तों और निजता नीति का लिंक दें.

कॉन्टेंट को पहले से फ़ेच करना, कैश मेमोरी में सेव करना या स्टोर करना

Places SDK for iOS का इस्तेमाल करने वाले ऐप्लिकेशन, Google के साथ आपके कानूनी समझौते की शर्तों के मुताबिक काम करते हैं. आपके समझौते की शर्तों के मुताबिक, आपको किसी भी कॉन्टेंट को पहले से फ़ेच, इंंडेक्स, स्टोर या कैश मेमोरी में सेव नहीं करना चाहिए. हालांकि, शर्तों में बताई गई सीमित शर्तों के तहत ऐसा किया जा सकता है.

ध्यान दें कि किसी जगह की यूनीक पहचान करने के लिए इस्तेमाल किए जाने वाले जगह के आईडी पर, कैश मेमोरी में सेव करने से जुड़ी पाबंदियां लागू नहीं होतीं. इसलिए, जगह की जानकारी वाले आईडी की वैल्यू को हमेशा के लिए सेव किया जा सकता है. जगह का आईडी, एपीआई रिस्पॉन्स में place_id फ़ील्ड में दिखता है. प्लेस आईडी की गाइड में, प्लेस आईडी सेव करने, रीफ़्रेश करने, और उन्हें मैनेज करने का तरीका जानें.

iOS के लिए Places SDK टूल के नतीजे दिखाना

iOS के लिए Places SDK के नतीजों को Google Maps पर या मैप के बिना दिखाया जा सकता है. अगर आपको मैप पर, Places SDK for iOS के नतीजे दिखाने हैं, तो ये नतीजे Google Maps पर दिखाए जाने चाहिए. iOS के लिए Places SDK के डेटा का इस्तेमाल, Google मैप के अलावा किसी दूसरे मैप पर करने की अनुमति नहीं है.

अगर आपका ऐप्लिकेशन Google Maps पर डेटा दिखाता है, तो Google का लोगो शामिल किया जाएगा और उसमें बदलाव नहीं किया जा सकता. Google Maps के साथ एक ही स्क्रीन पर Google का डेटा दिखाने वाले ऐप्लिकेशन को, Google को कोई और एट्रिब्यूशन देने की ज़रूरत नहीं होती.

अगर आपका ऐप्लिकेशन किसी ऐसे पेज या व्यू पर डेटा दिखाता है जिस पर Google Maps भी नहीं दिखता, तो आपको उस डेटा के साथ Google का लोगो दिखाना होगा. उदाहरण के लिए, अगर आपका ऐप्लिकेशन एक टैब पर Google का डेटा दिखाता है और दूसरे टैब पर उस डेटा वाला Google मैप दिखाता है, तो पहले टैब पर Google का लोगो दिखना चाहिए. अगर आपका ऐप्लिकेशन, अपने-आप पूरा होने वाले या बिना अपने-आप पूरे होने वाले खोज फ़ील्ड का इस्तेमाल करता है, तो लोगो को इनलाइन दिखाना ज़रूरी है.

Google का लोगो, मैप के सबसे नीचे बाएं कोने में होना चाहिए. साथ ही, एट्रिब्यूशन की जानकारी, मैप के सबसे नीचे दाएं कोने में होनी चाहिए. ये दोनों चीज़ें, मैप पर एक साथ दिखनी चाहिए, न कि मैप के नीचे या ऐप्लिकेशन में किसी दूसरी जगह. यहां दिए गए मैप के उदाहरण में, मैप के सबसे नीचे बाईं ओर Google का लोगो और सबसे नीचे दाईं ओर एट्रिब्यूशन दिख रहा है.

मैप पर Google का लोगो और एट्रिब्यूशन कहां डालें

यहां दी गई ZIP फ़ाइल में, डेस्कटॉप, Android, और iOS ऐप्लिकेशन के लिए, Google का लोगो सही साइज़ में मौजूद है. इन लोगो का साइज़ नहीं बदला जा सकता या इनमें किसी भी तरह का बदलाव नहीं किया जा सकता.

डाउनलोड करें: google_logo.zip

एट्रिब्यूशन में बदलाव न करें. एट्रिब्यूशन की जानकारी को न हटाएं, न छिपाएं, और न ही काटें. Google के लोगो को इनलाइन इस्तेमाल नहीं किया जा सकता. उदाहरण के लिए, "ये मैप [Google_logo] से मिले हैं".

एट्रिब्यूशन को पास में रखें. अगर सीधे एम्बेड किए गए कॉन्टेंट के अलावा, Google इमेज के स्क्रीनशॉट का इस्तेमाल किया जा रहा है, तो इमेज में दिखने वाले स्टैंडर्ड एट्रिब्यूशन को शामिल करें. ज़रूरत पड़ने पर, एट्रिब्यूशन टेक्स्ट की स्टाइल और जगह को अपनी पसंद के मुताबिक बनाया जा सकता है. हालांकि, यह ज़रूरी है कि टेक्स्ट, कॉन्टेंट के आस-पास हो और सामान्य दर्शक या पाठक उसे आसानी से पढ़ सकें. एट्रिब्यूशन को कॉन्टेंट से अलग नहीं किया जा सकता. जैसे, अपनी किताब के आखिर में, अपनी फ़ाइलों या शो के क्रेडिट में या अपनी वेबसाइट के फ़ुटर में.

डेटा उपलब्ध करवाने वाली तीसरे पक्ष की कंपनियों को शामिल करें. हमारे मैपिंग प्रॉडक्ट पर मौजूद कुछ डेटा और इमेज, Google के अलावा अन्य कंपनियों से मिलती हैं. ऐसी इमेज का इस्तेमाल करने पर, एट्रिब्यूशन के टेक्स्ट में "Google" और डेटा उपलब्ध कराने वाली कंपनी का नाम होना चाहिए. जैसे, "मैप का डेटा: Google, Maxar Technologies." अगर इमेज में तीसरे पक्ष के डेटा उपलब्ध कराने वाली कंपनियों का नाम दिया गया है, तो सिर्फ़ "Google" या Google का लोगो शामिल करना सही एट्रिब्यूशन नहीं है.

अगर Google Maps Platform का इस्तेमाल ऐसे डिवाइस पर किया जा रहा है जहां एट्रिब्यूशन डिसप्ले काम नहीं करता, तो अपने इस्तेमाल के उदाहरण के हिसाब से लाइसेंस के बारे में बातचीत करने के लिए, कृपया Google की सेल्स टीम से संपर्क करें.

एट्रिब्यूशन से जुड़ी अन्य ज़रूरी शर्तें

तीसरे पक्ष की सेवा देने वाली कंपनियों के एट्रिब्यूशन में ऐसा कॉन्टेंट और लिंक शामिल होते हैं जिन्हें आपको उपयोगकर्ता को उसी फ़ॉर्मैट में दिखाना चाहिए जिस फ़ॉर्मैट में उन्हें उपलब्ध कराया गया है. Google का सुझाव है कि आपका ऐप्लिकेशन, जगह की जानकारी के नीचे यह जानकारी दिखाए.

एपीआई से मिले तीसरे पक्ष के एट्रिब्यूशन में, Google एट्रिब्यूशन शामिल नहीं होता. आपको खुद ही यह एट्रिब्यूट शामिल करना होगा, जैसा कि Google का लोगो और एट्रिब्यूशन दिखाना में बताया गया है.

किसी एक जगह या जगहों के कलेक्शन के लिए, तीसरे पक्ष के एट्रिब्यूशन को वापस पाने के लिए, इन निर्देशों का पालन करें.

किसी एक जगह के लिए एट्रिब्यूशन पाना

आईडी के हिसाब से जगह पाकर किसी जगह की जानकारी पाने पर, GMSPlace पर मौजूद attributions प्रॉपर्टी से उस जगह के एट्रिब्यूशन को वापस पाया जा सकता है.

attributions को NSAttributedString ऑब्जेक्ट के तौर पर दिया जाता है.

जगहों के कलेक्शन के लिए एट्रिब्यूशन पाना

अगर आपका ऐप्लिकेशन, डिवाइस की मौजूदा जगह का अनुरोध करके मिली जानकारी दिखाता है, तो ऐप्लिकेशन को जगह की दिखाई गई जानकारी के लिए, तीसरे पक्ष के एट्रिब्यूशन दिखाने होंगे. अनुरोध में मिली सभी जगहों के लिए एट्रिब्यूशन, GMSPlaceLikelihoodList पर मौजूद attributions प्रॉपर्टी से वापस पाएं.

attributions को NSAttributedString ऑब्जेक्ट के तौर पर उपलब्ध कराया जाता है. इसे उसी तरह ऐक्सेस और दिखाया जा सकता है जिस तरह attributions को एक ही जगह पर दिखाया जाता है. इस बारे में ऊपर बताया गया है.

खोज के नतीजों के एट्रिब्यूशन

यूरोप में, Google की बिना किसी बदलाव वाली रैंकिंग का इस्तेमाल करते समय, खोज के नतीजों में दिखने वाले प्रॉडक्ट के लिए, एक क्लिक से ज़्यादा दूर नहीं होना चाहिए. इसमें, खोज के नतीजों की रैंकिंग तय करने वाले मुख्य फ़ैक्टर और उनके वज़न के बारे में बताने वाला एक्सप्लेनेटर टेक्स्ट होना चाहिए. ज़्यादा जानकारी देने वाला टेक्स्ट:

हेडर: इन नतीजों के बारे में जानकारी

मुख्य हिस्सा: अपने आस-पास के कारोबार या जगहें खोजने पर, Google Maps आपको स्थानीय नतीजे दिखाएगा. मुख्य तौर पर काम की जानकारी, दूरी, और लोकप्रियता जैसी कई बातों के आधार पर, खोज के सबसे सटीक नतीजे दिखाए जाते हैं.

पहला बटन: ज़्यादा जानें
"ज़्यादा जानें" टेक्स्ट, सहायता केंद्र के किसी लेख से लिंक होना चाहिए.

दूसरा बटन: ठीक है

किसी फ़ोटो के लिए एट्रिब्यूशन दिखाना

अगर आपका ऐप्लिकेशन फ़ोटो दिखाता है, तो आपको उन सभी फ़ोटो के लिए कोई 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 ऑब्जेक्ट में ज़्यादा से ज़्यादा पांच समीक्षाएं हो सकती हैं. हर समीक्षा को 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 पर किसी को प्रतिनिधि के तौर पर सेट करें. साथ ही, YES दिखाने के लिए, UITextViewDelegate के shouldInteractWithURL तरीके को सेट करें.

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 लोगो का इस्तेमाल नहीं किया जा सकता, तो सीएसएस और एचटीएमएल में Google एट्रिब्यूशन के लिए स्टाइल के दिशा-निर्देश यहां दिए गए हैं.

जगह खाली करना

लॉकअप के आस-पास की खाली जगह, Google में "G" की ऊंचाई के बराबर या उससे ज़्यादा होनी चाहिए.

एट्रिब्यूशन कॉपी और Google लोगो के बीच का स्पेस, "G" के आधे हिस्से के बराबर होना चाहिए.

Google लोगो और एट्रिब्यूशन कॉपी के बीच की स्पेस

टेक्स्ट पढ़ने में आसानी

ब्यलाइन हमेशा साफ़ और आसानी से पढ़ी जा सकने वाली होनी चाहिए. साथ ही, यह किसी दिए गए बैकग्राउंड के लिए सही रंग में दिखनी चाहिए. चुने गए लोगो के वैरिएशन के लिए, हमेशा ज़रूरत के मुताबिक कंट्रास्ट दें.

रंग

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 फ़ॉन्ट का इस्तेमाल करें.

सीएसएस का उदाहरण

नीचे दी गई सीएसएस को "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;