टेक्स्ट से खोजें (नई सुविधा)

प्लैटफ़ॉर्म चुनें: Android iOS JavaScript वेब सेवा

यूरोपियन इकनॉमिक एरिया (ईईए) के डेवलपर

टेक्स्ट से खोजें (नया वर्शन) सुविधा, किसी स्ट्रिंग के आधार पर जगहों के सेट के बारे में जानकारी दिखाती है. उदाहरण के लिए, "दिल्ली में पिज़्ज़ा" या "मुंबई के आस-पास जूतों की दुकानें" या "123 मेन स्ट्रीट". यह सेवा, टेक्स्ट स्ट्रिंग और सेट की गई जगह के हिसाब से जगहों की सूची दिखाती है.

ज़रूरी पैरामीटर के साथ-साथ, टेक्स्ट से खोजें (नया) में वैकल्पिक पैरामीटर का इस्तेमाल करके भी क्वेरी को बेहतर बनाया जा सकता है. इससे आपको बेहतर नतीजे मिल सकते हैं.

टेक्स्ट से खोजें (नई सुविधा), आस-पास की जगहों की जानकारी (नई सुविधा) से मिलती-जुलती है. दोनों के बीच मुख्य अंतर यह है कि टेक्स्ट से खोजें (नया वर्शन) सुविधा की मदद से, अपनी पसंद की कोई भी सर्च स्ट्रिंग तय की जा सकती है. वहीं, आस-पास की जगहों की जानकारी (नया वर्शन) सुविधा का इस्तेमाल करने के लिए, आपको उस इलाके की जानकारी देनी होगी जहां आपको खोज करनी है.

टेक्स्ट की मदद से खोज करने के अनुरोध

टेक्स्ट सर्च का अनुरोध इस तरह किया जाता है:

// Specify the list of fields to return.
final List<Place.Field> placeFields = Arrays.asList(Place.Field.ID, Place.Field.DISPLAY_NAME);

// Define latitude and longitude coordinates of the search area.
LatLng southWest = new LatLng(37.38816277477739, -122.08813770258874);
LatLng northEast = new LatLng(37.39580487866437, -122.07702325966572);

// Use the builder to create a SearchByTextRequest object.
final SearchByTextRequest searchByTextRequest = SearchByTextRequest.builder("Spicy Vegetarian Food", placeFields)
  .setMaxResultCount(10)
  .setLocationRestriction(RectangularBounds.newInstance(southWest, northEast)).build();

// Call PlacesClient.searchByText() to perform the search.
// Define a response handler to process the returned List of Place objects.
placesClient.searchByText(searchByTextRequest)
    .addOnSuccessListener(response -> {
      List<Place> places = response.getPlaces();
    });

इस उदाहरण में, आपने:

  • फ़ील्ड की सूची को इस तरह सेट करें कि उसमें सिर्फ़ Place.Field.ID और Place.Field.DISPLAY_NAME शामिल हों. इसका मतलब है कि जवाब में मौजूद Place ऑब्जेक्ट में, सिर्फ़ वे दो फ़ील्ड शामिल होते हैं जो हर मैचिंग जगह के बारे में बताते हैं.

  • खोज को तय करने वाला SearchByTextRequest ऑब्जेक्ट बनाने के लिए, SearchByTextRequest.Builder का इस्तेमाल करें.

    • टेक्स्ट क्वेरी स्ट्रिंग को "Spicy Vegetarian Food" पर सेट करें.

    • नतीजों में दिखने वाली जगहों की संख्या को ज़्यादा से ज़्यादा 10 पर सेट करें. डिफ़ॉल्ट और ज़्यादा से ज़्यादा वैल्यू 20 होती है.

    • खोज के दायरे को अक्षांश और देशांतर के निर्देशांकों से तय किए गए आयत तक सीमित करें. इस इलाके से बाहर के नतीजे नहीं दिखाए जाते.

  • कोई OnSuccessListener जोड़ें और SearchByTextResponse ऑब्जेक्ट से, मिलती-जुलती जगहें पाएं.

टेक्स्ट की मदद से खोज करने पर मिलने वाले जवाब

SearchByTextResponse क्लास, खोज के अनुरोध से मिले जवाब को दिखाता है. SearchByTextResponse ऑब्जेक्ट में ये शामिल होते हैं:

  • Place ऑब्जेक्ट की एक सूची, जिसमें मैच करने वाली सभी जगहों की जानकारी होती है. हर मैचिंग जगह के लिए एक Place ऑब्जेक्ट होता है.

  • हर Place ऑब्जेक्ट में सिर्फ़ वे फ़ील्ड होते हैं जो अनुरोध में पास की गई फ़ील्ड की सूची में तय किए गए हैं.

उदाहरण के लिए, अनुरोध में फ़ील्ड की सूची इस तरह से तय की गई है:

// Specify the list of fields to return.
final List<Place.Field> placeFields = Arrays.asList(Place.Field.ID, Place.Field.DISPLAY_NAME);

इस फ़ील्ड सूची का मतलब है कि जवाब में मौजूद हर Place ऑब्जेक्ट में, सिर्फ़ जगह का आईडी और मैच होने वाली हर जगह का नाम शामिल होता है. इसके बाद, हर Place ऑब्जेक्ट में इन फ़ील्ड को ऐक्सेस करने के लिए, Place.getId() और Place.getName() तरीकों का इस्तेमाल किया जा सकता है.

Place ऑब्जेक्ट में डेटा ऐक्सेस करने के ज़्यादा उदाहरणों के लिए, जगह के ऑब्जेक्ट के डेटा फ़ील्ड ऐक्सेस करना देखें

पेज पर नंबर डालना

टेक्स्ट से खोजें की SearchByTextResponse क्लास, टेक्स्ट से खोज के नतीजे के पेज नंबर डालने की सुविधा को ऐक्सेस करने की अनुमति देती है. इसके लिए, getPagination() तरीके का इस्तेमाल किया जाता है. यह तरीका, पेज नंबर डालने वाला ऑब्जेक्ट दिखाता है.

नतीजों के अतिरिक्त पेज उपलब्ध हैं या नहीं, यह पता लगाने के लिए पेज नंबर डालने की सुविधा देने वाले ऑब्जेक्ट के hasNextPage() तरीके का इस्तेमाल करें. यह तरीका, बूलियन वैल्यू (सही या गलत) दिखाता है.

hasNextPage() के सही होने पर, नतीजों का अगला पेज पाने के लिए fetchNextPage() तरीके को कॉल करें.

यहां दिए गए उदाहरण में, अगला पेज उपलब्ध है या नहीं, यह देखने और फिर पेज को लोड करने का तरीका बताया गया है.

Kotlin

val searchByTextRequest =
      searchByTextRequest("restaurants", Arrays.asList(Place.Field.NAME)) {
        maxResultCount = 10
      }

// using pagination object (Preferred)
placesClient.searchByText(searchByTextRequest)   
    .addOnSuccessListener {response: SearchByTextResponse ->
        val places = response.places

        val pagination = response.pagination

        if (pagination.hasNextPage()) {
            pagination.setPageSize(20)
            pagination.fetchNextPage()
                    .addOnSuccessListener { nextPageResponse ->
                          val nextPagePlaces = nextPageResponse.getPlaces()
                    }
                    .addOnFailureListener {// Handle error with given status code}
        }
}
.addOnFailureListener {
// TODO: Handle error with given status code.
exception -> {
          exception.printStackTrace();
        }
}

Java

SearchByTextRequest searchByTextRequest =
  SearchByTextRequest.builder("restaurants", Arrays.asList(Place.Field.NAME)).setMaxResultCount(10).build();

// using pagination object (Preferred)
placesClient.searchByText(searchByTextRequest)
  .addOnSuccessListener((response) -> {
    List<Place> places = response.getPlaces();
    Log.i(TAG, "Places result: " + places);

    Pagination pagination =
      response.getPagination();

    if (pagination.hasNextPage()) {
      pagination.setPageSize(20); // change the page size from 10 to 20
      pagination.fetchNextPage()
    	  .addOnSuccessListener((nextPageResponse) -> {
            List<Place> nextPagePlaces = nextPageResponse.getPlaces();
            Log.i(TAG, "Next page places result: " + nextPagePlaces);
        });
    }
  })
  .addOnFailureListener((exception) -> {
    if (exception instanceof ApiException) {
    	// Handle error with given status code
    }
  });

ज़रूरी पैरामीटर

SearchByTextRequest के लिए ज़रूरी पैरामीटर ये हैं:

  • फ़ील्ड की सूची

    यह तय करें कि जगह की जानकारी के कौनसे डेटा फ़ील्ड दिखाने हैं. Place.Field वैल्यू की सूची पास करें. इसमें उन डेटा फ़ील्ड की जानकारी दें जिन्हें वापस करना है. जवाब में दिखाए गए फ़ील्ड की कोई डिफ़ॉल्ट सूची नहीं होती.

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

    इनमें से एक या उससे ज़्यादा फ़ील्ड की जानकारी दें:

    • इन फ़ील्ड की वजह से, टेक्स्ट से खोजें एसेंशियल आईडी ओनली एसकेयू ट्रिगर होता है:

      Place.Field.DISPLAY_NAME*
          * Place.Field.NAME के बजाय इसका इस्तेमाल करें (वर्शन 4.0 में अब काम नहीं करता).
      Place.Field.ID
      Place.Field.RESOURCE_NAME*
          * इसमें जगह के संसाधन का नाम इस फ़ॉर्मैट में होता है: places/PLACE_ID.
           जगह के नाम को टेक्स्ट के तौर पर ऐक्सेस करने के लिए, DISPLAY_NAME का इस्तेमाल करें.

      फ़ील्ड और उनसे जुड़े एसकेयू की पूरी सूची देखने के लिए, जगह के लिए डेटा फ़ील्ड (नया) देखें.

    • इन फ़ील्ड की वजह से, टेक्स्ट से खोजें प्रो एसकेयू ट्रिगर होता है:

      Place.Field.ACCESSIBILITY_OPTIONS*
          Place.Field.WHEELCHAIR_ACCESSIBLE_ENTRANCE (अब काम नहीं करता) के बजाय इसका इस्तेमाल करें.
      Place.Field.ADDRESS_COMPONENTS
      Place.Field.ADR_FORMAT_ADDRESS
      Place.Field.BUSINESS_STATUS
      Place.Field.FORMATTED_ADDRESS*
          Place.Field.ADDRESS (अब काम नहीं करता) के बजाय इसका इस्तेमाल करें.
      Place.Field.GOOGLE_MAPS_URI
      Place.Field.ICON_BACKGROUND_COLOR
      Place.Field.ICON_MASK_URL *
          Place.Field.ICON_URL (अब काम नहीं करता) के बजाय इसका इस्तेमाल करें.
      Place.Field.LOCATION*
          Place.Field.LAT_LNG (अब काम नहीं करता) के बजाय इसका इस्तेमाल करें.
      Place.Field.PHOTO_METADATAS
      Place.Field.PLUS_CODE
      Place.Field.PRIMARY_TYPE
      Place.Field.PRIMARY_TYPE_DISPLAY_NAME
      Place.Field.SHORT_FORMATTED_ADDRESS
      Place.Field.SUB_DESTINATIONS
      Place.Field.TYPES
      Place.Field.UTC_OFFSET
      Place.Field.VIEWPORT

      फ़ील्ड और उनसे जुड़े एसकेयू की पूरी सूची देखने के लिए, जगह के लिए डेटा फ़ील्ड (नया) देखें.

    • इन फ़ील्ड से टेक्स्ट से खोजें Enterprise एसकेयू ट्रिगर होता है:

      Place.Field.CURRENT_OPENING_HOURS
      Place.Field.CURRENT_SECONDARY_OPENING_HOURS
      Place.Field.INTERNATIONAL_PHONE_NUMBER*
          * इसका इस्तेमाल Place.Field.PHONE_NUMBER के बजाय करें. अब सेवा में नहीं है.
      Place.Field.NATIONAL_PHONE_NUMBER
      Place.Field.OPENING_HOURS
      Place.Field.PRICE_LEVEL
      Place.Field.RATING
      Place.Field.SECONDARY_OPENING_HOURS
      Place.Field.USER_RATING_COUNT*
          * इसका इस्तेमाल Place.Field.USER_RATINGS_TOTAL के बजाय करें. अब सेवा में नहीं है.
      Place.Field.WEBSITE_URI

      फ़ील्ड और उनसे जुड़े एसकेयू की पूरी सूची देखने के लिए, जगह के लिए डेटा फ़ील्ड (नया) देखें.

    • इन फ़ील्ड की वजह से, टेक्स्ट से खोजें Enterprise Plus एसकेयू ट्रिगर होता है:

      Place.Field.ALLOWS_DOGS
      Place.Field.CURBSIDE_PICKUP
      Place.Field.DELIVERY
      Place.Field.DINE_IN
      Place.Field.EDITORIAL_SUMMARY
      Place.Field.EV_CHARGE_OPTIONS
      Place.Field.FUEL_OPTIONS
      Place.Field.GOOD_FOR_CHILDREN
      Place.Field.GOOD_FOR_GROUPS
      Place.Field.GOOD_FOR_WATCHING_SPORTS
      Place.Field.LIVE_MUSIC
      Place.Field.MENU_FOR_CHILDREN
      Place.Field.OUTDOOR_SEATING
      Place.Field.PARKING_OPTIONS
      Place.Field.PAYMENT_OPTIONS
      Place.Field.RESERVABLE
      Place.Field.RESTROOM
      Place.Field.REVIEWS
      Place.Field.SERVES_BEER
      Place.Field.SERVES_BREAKFAST
      Place.Field.SERVES_BRUNCH
      Place.Field.SERVES_COCKTAILS
      Place.Field.SERVES_COFFEE
      Place.Field.SERVES_DESSERT
      Place.Field.SERVES_DINNER
      Place.Field.SERVES_LUNCH
      Place.Field.SERVES_VEGETARIAN_FOOD
      Place.Field.SERVES_WINE
      Place.Field.TAKEOUT

      फ़ील्ड और उनसे जुड़े एसकेयू की पूरी सूची देखने के लिए, जगह के लिए डेटा फ़ील्ड (नया) देखें.

    फ़ील्ड सूची पैरामीटर सेट करने के लिए, SearchByTextRequest ऑब्जेक्ट बनाते समय setPlaceFields() तरीके को कॉल करें.

  • टेक्स्ट क्वेरी

    वह टेक्स्ट स्ट्रिंग जिसे खोजना है. उदाहरण के लिए: "रेस्टोरेंट", "123 मेन स्ट्रीट" या "सैन फ़्रांसिस्को में घूमने के लिए सबसे अच्छी जगह". एपीआई, इस स्ट्रिंग के आधार पर संभावित मैच दिखाता है. साथ ही, नतीजों को उनकी प्रासंगिकता के हिसाब से क्रम में लगाता है.

    टेक्स्ट क्वेरी पैरामीटर सेट करने के लिए, SearchByTextRequest ऑब्जेक्ट बनाते समय setTextQuery() तरीके को कॉल करें.

ज़रूरी नहीं पैरामीटर

अपने अनुरोध के लिए वैकल्पिक पैरामीटर तय करने के लिए, SearchByTextRequest ऑब्जेक्ट का इस्तेमाल करें.

  • शामिल किए जाने वाले टाइप

    नतीजों को उन जगहों तक सीमित करता है जो टेबल A में तय किए गए टाइप से मेल खाती हैं. सिर्फ़ एक टाइप तय किया जा सकता है. उदाहरण के लिए:

    • setIncludedType("bar")
    • setIncludedType("pharmacy")

    शामिल किए गए टाइप पैरामीटर को सेट करने के लिए, SearchByTextRequest ऑब्जेक्ट बनाते समय setIncludedType() तरीके को कॉल करें.

  • जगह के हिसाब से पक्षपात

    खोजने के लिए कोई हिस्सा तय करता है. यह जगह, बायस के तौर पर काम करती है. इसका मतलब है कि चुनी गई जगह के आस-पास के नतीजे दिखाए जा सकते हैं. इनमें, चुनी गई जगह से बाहर के नतीजे भी शामिल हैं.

    जगह के हिसाब से पाबंदी या जगह के हिसाब से पक्षपात तय किया जा सकता है, लेकिन दोनों को एक साथ तय नहीं किया जा सकता. जगह के हिसाब से पाबंदी लगाने का मतलब है कि नतीजे सिर्फ़ उस जगह के लिए दिखाए जाएंगे. वहीं, जगह के हिसाब से खोज के नतीजों को प्राथमिकता देने का मतलब है कि नतीजे उस जगह के लिए या उसके आस-पास के लिए दिखाए जाएंगे. हालांकि, यह ध्यान रखें कि जगह के हिसाब से खोज के नतीजों को प्राथमिकता देने पर, नतीजे बताई गई जगह के बाहर के भी हो सकते हैं.

    इलाके को रेक्टैंगल व्यूपोर्ट या सर्कल के तौर पर तय करें.

    • सर्कल को केंद्र बिंदु और त्रिज्या (मीटर में) से तय किया जाता है. रेडियस, 0.0 और 50,000.0 के बीच होना चाहिए. हालांकि, इन दोनों में से भी कोई संख्या हो सकती है. उदाहरण के लिए:

      // Define latitude and longitude coordinates of the center of the search area.
      LatLng searchCenter = new LatLng(37.38816277477739, -122.08813770258874);
      
      // Use the builder to create a SearchByTextRequest object.
      // Set the radius of the search area to 500.0 meters.
      final SearchByTextRequest searchByTextRequest = SearchByTextRequest.builder("Spicy Vegetarian Food", placeFields)
        .setMaxResultCount(10)
        .setLocationBias(CircularBounds.newInstance(searchCenter, 500.0)).build();
    • रेक्टैंगल, अक्षांश-देशांतर व्यूपोर्ट होता है. इसे दो डायगनल के तौर पर दिखाया जाता है. ये डायगनल, विपरीत दिशा में मौजूद कम और ज़्यादा पॉइंट होते हैं. लो पॉइंट, रेक्टैंगल के दक्षिण-पश्चिम कोने को दिखाता है. वहीं, हाई पॉइंट, रेक्टैंगल के उत्तर-पूर्व कोने को दिखाता है.

      व्यूपोर्ट को एक बंद क्षेत्र माना जाता है. इसका मतलब है कि इसमें इसकी सीमा शामिल होती है. अक्षांश की सीमाएं -90 से 90 डिग्री के बीच होनी चाहिए. साथ ही, देशांतर की सीमाएं -180 से 180 डिग्री के बीच होनी चाहिए:

      • अगर low = high है, तो व्यूपोर्ट में वह सिंगल पॉइंट शामिल होता है.
      • अगर low.longitude > high.longitude है, तो देशांतर की रेंज उल्टी हो जाती है. इसका मतलब है कि व्यूपोर्ट, 180 डिग्री देशांतर की लाइन को पार कर जाता है.
      • अगर low.longitude = -180 डिग्री और high.longitude = 180 डिग्री है, तो व्यूपोर्ट में सभी देशांतर शामिल होते हैं.
      • अगर low.longitude = 180 डिग्री और high.longitude = -180 डिग्री है, तो देशांतर की रेंज खाली है.
      • अगर low.latitude > high.latitude है, तो अक्षांश की रेंज खाली है.

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

      उदाहरण के लिए, रेक्टैंगुलर व्यूपोर्ट के लिए टेक्स्ट खोज के अनुरोध देखें.

      जगह के हिसाब से नतीजे दिखाने का पैरामीटर सेट करने के लिए, SearchByTextRequest ऑब्जेक्ट बनाते समय setLocationBias() तरीके को कॉल करें.

  • जगह की जानकारी से जुड़ी पाबंदी

    खोजने के लिए कोई हिस्सा तय करता है. तय किए गए इलाके से बाहर के नतीजे नहीं दिखाए जाते. इलाके को रेक्टैंगल व्यूपोर्ट के तौर पर तय करें. व्यूपोर्ट तय करने के बारे में जानकारी पाने के लिए, लोकेशन के हिसाब से नतीजे दिखाने की सुविधा का ब्यौरा देखें.

    जगह की पाबंदी या जगह के हिसाब से नतीजे दिखाने की सुविधा में से किसी एक को ही चुना जा सकता है, दोनों को नहीं. जगह के हिसाब से पाबंदी लगाने का मतलब है कि नतीजे सिर्फ़ उस जगह के होने चाहिए. वहीं, जगह के हिसाब से खोज के नतीजों में बदलाव करने का मतलब है कि नतीजे उस जगह के आस-पास के होने चाहिए, लेकिन वे उस जगह से बाहर के भी हो सकते हैं.

    जगह से जुड़ी पाबंदी का पैरामीटर सेट करने के लिए, SearchByTextRequest ऑब्जेक्ट बनाते समय setLocationRestriction() तरीके को कॉल करें.

  • नतीजों की ज़्यादा से ज़्यादा संख्या

    इससे यह तय होता है कि जगह के ज़्यादा से ज़्यादा कितने नतीजे दिखाए जाएं. यह संख्या 1 से 20 (डिफ़ॉल्ट) के बीच होनी चाहिए.

    ज़्यादा से ज़्यादा नतीजों की संख्या का पैरामीटर सेट करने के लिए, SearchByTextRequest ऑब्जेक्ट बनाते समय setMaxResultCount() तरीके को कॉल करें.

  • कम से कम रेटिंग

    नतीजों को सिर्फ़ उन नतीजों तक सीमित करता है जिनकी औसत उपयोगकर्ता रेटिंग, इस सीमा से ज़्यादा या इसके बराबर है. वैल्यू, 0.0 और 5.0 के बीच की होनी चाहिए. हालांकि, इन दोनों में से भी कोई संख्या हो सकती है. साथ ही, वैल्यू 0.5 के इंक्रीमेंट में होनी चाहिए. उदाहरण के लिए: 0, 0.5, 1.0, ... , 5.0. वैल्यू को सबसे नज़दीकी 0.5 तक पूर्णांक बनाया जाता है. उदाहरण के लिए, 0.6 की वैल्यू से, 1.0 से कम रेटिंग वाले सभी नतीजे हट जाते हैं.

    कम से कम रेटिंग पैरामीटर सेट करने के लिए, SearchByTextRequest ऑब्जेक्ट बनाते समय setMinRating() तरीके को कॉल करें.

  • खुला है

    अगर true है, तो सिर्फ़ उन जगहों की जानकारी दिखाएं जो क्वेरी भेजे जाने के समय खुली हों. अगर false है, तो सभी कारोबारों की जानकारी दिखाएं. भले ही, वे खुले हों या नहीं. अगर आपने इस पैरामीटर को false पर सेट किया है, तो आपको उन जगहों के नतीजे दिखेंगे जिनके कारोबार के खुले होने का समय Google Places डेटाबेस में नहीं दिया गया है.

    'अभी खुला है' पैरामीटर सेट करने के लिए, SearchByTextRequest ऑब्जेक्ट बनाते समय setOpenNow() तरीके को कॉल करें.

  • किराये के लेवल

    डिफ़ॉल्ट रूप से, नतीजों में ऐसी जगहें शामिल होती हैं जो हर कीमत पर सेवाएं देती हैं. नतीजों को सिर्फ़ खास कीमत वाले लेवल की जगहों तक सीमित करने के लिए, पूर्णांक वैल्यू की एक सूची पास की जा सकती है. यह सूची, उन जगहों के लिए कीमत के लेवल से मेल खाती है जिनके नतीजे आपको दिखाने हैं:

    • 1 - इस जगह पर कम कीमत में सेवाएं मिलती हैं.
    • 2 - इस जगह पर, सामान्य कीमत पर सेवाएं उपलब्ध हैं.
    • 3 - इस जगह पर महंगी सेवाएं मिलती हैं.
    • 4 - इस जगह पर सेवाएं बहुत महंगी हैं.

    कीमत के लेवल का पैरामीटर सेट करने के लिए, SearchByTextRequest ऑब्जेक्ट बनाते समय setPriceLevels() तरीके को कॉल करें.

  • रैंक करने की प्राथमिकता

    इससे यह तय होता है कि क्वेरी के टाइप के आधार पर, जवाब में नतीजों को कैसे रैंक किया जाता है:

    • "न्यूयॉर्क शहर में रेस्टोरेंट" जैसी कैटगरी वाली क्वेरी के लिए, SearchByTextRequest.RankPreference.RELEVANCE (खोज के नतीजों को खोज के कितना सही है के हिसाब से रैंक करना) डिफ़ॉल्ट रूप से चालू होता है. रैंक की प्राथमिकता को SearchByTextRequest.RankPreference.RELEVANCE या SearchByTextRequest.RankPreference.DISTANCE (दूरी के हिसाब से नतीजों को रैंक करें) पर सेट किया जा सकता है.
    • हमारा सुझाव है कि "माउंटेन व्यू, कैलिफ़ोर्निया" जैसी बिना कैटगरी वाली क्वेरी के लिए, रैंक की प्राथमिकता वाले पैरामीटर को सेट न करें.

    रैंक की प्राथमिकता वाला पैरामीटर सेट करने के लिए, SearchByTextRequest ऑब्जेक्ट बनाते समय setRankPreference() तरीके को कॉल करें.

  • क्षेत्र कोड

    जवाब को फ़ॉर्मैट करने के लिए इस्तेमाल किया जाने वाला क्षेत्र कोड. इसे दो वर्णों वाले CLDR कोड की वैल्यू के तौर पर बताया जाता है. इस पैरामीटर की वजह से, खोज के नतीजों पर पक्षपात का असर भी पड़ सकता है. इसकी कोई डिफ़ॉल्ट वैल्यू नहीं है.

    अगर जवाब में मौजूद पते के फ़ील्ड में दिए गए देश का नाम, क्षेत्र के कोड से मेल खाता है, तो पते में देश का कोड शामिल नहीं किया जाता.

    ज़्यादातर CLDR कोड, ISO 3166-1 कोड से मिलते-जुलते होते हैं. हालांकि, कुछ कोड अलग भी होते हैं. उदाहरण के लिए, यूनाइटेड किंगडम का ccTLD "uk" (.co.uk) है, जबकि इसका ISO 3166-1 कोड "gb" है. तकनीकी तौर पर, यह "यूनाइटेड किंगडम ऑफ़ ग्रेट ब्रिटेन और नॉदर्न आयरलैंड" के लिए है. लागू कानून के आधार पर, इस पैरामीटर से नतीजों पर असर पड़ सकता है.

    देश/इलाके के कोड का पैरामीटर सेट करने के लिए, SearchByTextRequest ऑब्जेक्ट बनाते समय setRegionCode() तरीके को कॉल करें.

  • सख्त टाइप फ़िल्टरिंग

    इसका इस्तेमाल, include टाइप पैरामीटर के साथ किया जाता है. true पर सेट करने पर, सिर्फ़ वे जगहें दिखती हैं जो include type से तय किए गए टाइप से मैच करती हैं. false डिफ़ॉल्ट वैल्यू है. इस वैल्यू के सेट होने पर, जवाब में ऐसी जगहें शामिल हो सकती हैं जो बताए गए टाइप से मेल नहीं खातीं.

    स्ट्रिक्ट टाइप फ़िल्टरिंग पैरामीटर सेट करने के लिए, SearchByTextRequest ऑब्जेक्ट बनाते समय setStrictTypeFiltering() तरीके को कॉल करें.