ऑटोकंप्लीट (नया) सुविधा, किसी अनुरोध के जवाब में जगहों के सुझाव दिखाती है. इस अनुरोध में, टेक्स्ट सर्च स्ट्रिंग और भौगोलिक सीमाएं शामिल होती हैं. इनसे खोज के दायरे को कंट्रोल किया जाता है. ऑटोकंप्लीट की सुविधा, इनपुट के पूरे शब्दों और सबस्ट्रिंग से मैच कर सकती है. इससे जगहों के नाम, पते, और प्लस कोड का पता चलता है. आपका ऐप्लिकेशन, उपयोगकर्ता के टाइप करते ही क्वेरी भेज सकता है. इससे, जगह और क्वेरी के सुझाव तुरंत मिल सकते हैं.
उदाहरण के लिए, आपने ऑटोकंप्लीट की सुविधा को कॉल किया. इसके लिए, आपने इनपुट के तौर पर एक ऐसी स्ट्रिंग का इस्तेमाल किया जिसमें उपयोगकर्ता का आधा-अधूरा इनपुट, "Sicilian piz" शामिल है. साथ ही, खोज के दायरे को सैन फ़्रांसिस्को, कैलिफ़ोर्निया तक सीमित किया गया है. इसके बाद, जवाब में खोज स्ट्रिंग और खोज के लिए चुनी गई जगह से मैच करने वाली जगहों की सूची दिखती है. जैसे, "सिसिलियन पिज़्ज़ा किचन" नाम का रेस्टोरेंट. जगह के अनुमान, उपयोगकर्ता को दिखाए जाते हैं, ताकि वह अपनी पसंद की जगह चुन सके. जगह के बारे में ज़्यादा जानकारी (नया वर्शन) का अनुरोध करके, सुझाई गई किसी भी जगह के बारे में ज़्यादा जानकारी पाई जा सकती है.
अपने ऐप्लिकेशन में, ऑटोकंप्लीट (नया) की सुविधा को दो मुख्य तरीकों से इंटिग्रेट किया जा सकता है:
- किसी जगह के शुरुआती अक्षर लिखने पर पूरा नाम सुझाने की सुविधा वाला विजेट जोड़ें: यह विजेट,
PlaceAutocompleteक्लास की मदद से, खोज के लिए ऑटोकंप्लीट की सुविधा देता है. यह सुविधा, उपयोगकर्ता के टाइप करते ही सुझाव दिखाती है. - प्रोग्राम के हिसाब से जगह के सुझाव पाना: सुझाव पाने और उन्हें कस्टम यूज़र इंटरफ़ेस में दिखाने के लिए, सीधे एपीआई को कॉल करें.
किसी जगह के शुरुआती अक्षर लिखने पर पूरा नाम सुझाने की सुविधा वाला विजेट जोड़ना
किसी जगह के शुरुआती अक्षर लिखने पर पूरा नाम सुझाने की सुविधा को आसानी से उपलब्ध कराने के लिए, अपने ऐप्लिकेशन में Place Autocomplete विजेट जोड़ा जा सकता है. यह विजेट, एक खास फ़ुल-स्क्रीन इंटरफ़ेस उपलब्ध कराता है. यह इंटरफ़ेस, उपयोगकर्ता के इनपुट को मैनेज करता है और उसे जगह के सुझाव दिखाता है. साथ ही, ऐप्लिकेशन को AutocompletePrediction ऑब्जेक्ट दिखाता है. इसके बाद, जगह के किसी भी सुझाव के बारे में ज़्यादा जानकारी पाने के लिए, Place Details (नया) का अनुरोध किया जा सकता है.
प्रोग्राम के हिसाब से जगह के सुझाव पाने की तरह ही, किसी जगह के शुरुआती अक्षर लिखने पर पूरा नाम सुझाने की सुविधा वाले विजेट की मदद से, सेशन टोकन का इस्तेमाल किया जा सकता है. इससे, बिलिंग के मकसद से, ऑटोकंप्लीट के अनुरोधों को सेशन में ग्रुप किया जा सकता है. setAutocompleteSessionToken() को कॉल करके, विजेट के लिए इंटेंट बनाते समय सेशन टोकन पास किया जा सकता है. अगर आपने सेशन टोकन नहीं दिया है, तो विजेट आपके लिए एक टोकन बनाएगा. इसे getSessionTokenFromIntent() को कॉल करके ऐक्सेस किया जा सकता है. सेशन टोकन इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, सेशन टोकन के बारे में जानकारी लेख पढ़ें.
अपने ऐप्लिकेशन में, किसी जगह के शुरुआती अक्षर लिखने पर पूरा नाम सुझाने की सुविधा का विजेट जोड़ने के लिए:
(ज़रूरी नहीं) सेशन टोकन तय करें. अगर आपने सेशन टोकन नहीं दिया है, तो विजेट आपके लिए एक टोकन बनाएगा.
अपनी पसंद के पैरामीटर और सेशन टोकन के साथ
autocompleteIntentतय करें.StartActivityForResultके लिएActivityResultLauncherतय करें. यह लॉन्चर, ऑटोकंप्लीट की सुविधा वाली गतिविधि से मिले नतीजे को मैनेज करेगा.ActivityResultLauncherके कॉलबैक में नतीजे को मैनेज करें. इसमेंAutocompletePredictionऔरAutocompleteSessionToken(अगर आपने खुद नहीं दिया है) को निकालना, गड़बड़ियों को ठीक करना, और किसी जगह के बारे में ज़्यादा जानकारी पाने के लिए,fetchPlace()का अनुरोध करना शामिल है.placeAutocompleteActivityResultLauncherका इस्तेमाल करके इंटेंट लॉन्च करना
यहां दिए गए सैंपल में, Kotlin और Java, दोनों का इस्तेमाल करके, किसी जगह के शुरुआती अक्षर लिखने पर पूरा नाम सुझाने की सुविधा वाले विजेट को जोड़ने का तरीका बताया गया है:
Kotlin
// Provide the API key that has enabled "Places API (New)" in the Google Cloud Console. Places.initializeWithNewPlacesApiEnabled(/* Context= */ context, /* API Key= */ key) // Optional, create a session token for Autocomplete request and the followup FetchPlace request. val sessionToken: AutocompleteSessionToken = AutocompleteSessionToken.newInstance() val autocompleteIntent: Intent = PlaceAutocomplete.createIntent(this) { // ... provide input params for origin, countries, types filter ... setAutocompleteSessionToken(sessionToken) } val placeAutocompleteActivityResultLauncher: ActivityResultLauncher<Intent> = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result: ActivityResult -> val intent = result.data if (intent != null && result.resultCode == PlaceAutocompleteActivity.RESULT_OK) { // get prediction object val prediction: AutocompletePrediction? = PlaceAutocomplete.getPredictionFromIntent(intent!!) // get session token val sessionToken: AutocompleteSessionToken? = PlaceAutocomplete.getSessionTokenFromIntent(intent!!) // create PlacesClient to make FetchPlace request (optional) val placesClient: PlacesClient = Places.createClient(this) val response = placesClient.awaitFetchPlace(prediction.placeId, Field.DISPLAY_NAME) { sessionToken = sessionToken // optional } } } // Launch Activity placeAutocompleteActivityResultLauncher.launch(autocompleteIntent)
Java
// Provide the API key that has enabled "Places API (New)" in the Google Cloud Console. Places.initializeWithNewPlacesApiEnabled(/* Context= */ context, /* API Key= */ key); // Optional, create a session token for Autocomplete request and the followup FetchPlace request AutocompleteSessionToken sessionToken = AutocompleteSessionToken.newInstance(); Intent autocompleteIntent = new PlaceAutocomplete.IntentBuilder() // ... set input params for origin, countries, types filter ... .setSessionToken(sessionToken) // optional .build(this); ActivityResultLauncher<Intent> placeAutocompleteActivityResultLauncher = registerForActivityResult( new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback<ActivityResult>() { @Override public void onActivityResult(ActivityResult result) { Intent intent = result.getData(); if (result.getResultCode() == PlaceAutocompleteActivity.RESULT_OK) { // get prediction object AutocompletePrediction prediction = PlaceAutocomplete.getPredictionFromIntent( Preconditions.checkNotNull(intent)); // get session token AutocompleteSessionToken sessionToken = PlaceAutocomplete.getSessionTokenFromIntent( Preconditions.checkNotNull(intent)); // create PlacesClient to make FetchPlace request (optional) PlacesClient placesClient = Places.createClient(this); FetchPlaceRequest request = FetchPlaceRequest.builder(prediction.getPlaceId(), Arrays.asList(Field.DISPLAY_NAME)) .setSessionToken(sessionToken).build(); Task<FetchPlaceResponse> task = placesClient.fetchPlace(request); } } } ); // Launch Activity placeAutocompleteActivityResultLauncher.launch(autocompleteIntent);
थीम को पसंद के मुताबिक बनाना
ऑटोकंप्लीट की सुविधा का इस्तेमाल करते समय, ऐसी थीम तय की जा सकती है जो डिफ़ॉल्ट स्टाइल एट्रिब्यूट में से किसी को भी बदल सकती है. किसी जगह के शुरुआती अक्षर लिखने पर पूरा नाम सुझाने की सुविधा वाले कॉम्पोनेंट के रंग, टाइपोग्राफ़ी, स्पेसिंग, बॉर्डर, और कोनों को पसंद के मुताबिक बनाया जा सकता है. डिफ़ॉल्ट रूप से, यह कार्रवाई
PlacesMaterialTheme पर सेट रहती है. थीम के जिन एट्रिब्यूट को बदला नहीं जाता है वे डिफ़ॉल्ट स्टाइल का इस्तेमाल करते हैं.
…/res/values/themes.xml में, थीम को बदलने की सुविधा को तय किया जा सकता है. उदाहरण के लिए:
<?xml version="1.0" encoding="utf-8"?> <resources> <style name="BrandedTheme" parent="PlacesMaterialTheme"> <!-- Color tokens. --> <item name="placesColorOnNeutralContainer">#5300e8</item> <item name="placesColorOnNeutralContainerVariant">#ee6002</item> ... <!-- Typography tokens. --> <item name="placesTextAppearanceTitleLarge">@style/PlacesTextAppearance</item> <item name="placesTextAppearanceBodyMedium">@style/PlacesTextAppearance</item> ... <!-- Spacing tokens. --> <item name="placesSpacingSmall">6dp</item> <item name="placesSpacingMedium">12dp</item> ... <!-- Attribution tokens. --> <item name="placesColorAttributionLightTheme">white</item> <item name="placesColorAttributionDarkTheme">black</item> </style> </resources>
इसके बाद, setAutocompleteUiCustomization को कॉल करके, ओवरराइड स्टाइल को रेफ़रंस के तौर पर इस्तेमाल किया जा सकता है:
ActivityResultLauncher<Intent> placeAutocompleteActivityResultLauncher = registerForActivityResult( new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback<ActivityResult>() { @Override public void onActivityResult(ActivityResult result) { Intent intent = result.getData(); if (intent != null) { AutocompletePrediction prediction = PlaceAutocomplete.getPredictionFromIntent(intent); AutocompleteSessionToken sessionToken = PlaceAutocomplete.getSessionTokenFromIntent(intent); Status status = PlaceAutocomplete.getResultStatusFromIntent(intent); ... } } } ); Intent placeAutocompleteIntent = new PlaceAutocomplete.IntentBuilder() .setInitialQuery("INSERT_QUERY_TEXT") .setOrigin(new LatLng(10.0, 10.0)) ... .setAutocompleteUiCustomization( AutocompleteUiCustomization.builder() .listItemIcon(AutocompleteUiIcon.noIcon()) .listDensity(AutocompleteListDensity.MULTI_LINE) .theme(R.style.BrandedTheme) .build()) .build(this); placeAutocompleteActivityResultLauncher.launch(placeAutocompleteIntent);
प्रोग्राम के हिसाब से, जगह के सुझाव पाना
आपका ऐप्लिकेशन, ऑटोकंप्लीट एपीआई से सुझाई गई जगहों के नाम और/या पतों की सूची पा सकता है. इसके लिए, PlacesClient.findAutocompletePredictions() को कॉल करके, FindAutocompletePredictionsRequest ऑब्जेक्ट को पास करना होगा. यहां दिए गए उदाहरण में, PlacesClient.findAutocompletePredictions() को किया गया पूरा कॉल दिखाया गया है.
Places.initializeWithNewPlacesApiEnabled(context, apiKey);
final List<Field> placeFields = getPlaceFields();
LatLng center = new LatLng(37.7749, -122.4194);
CircularBounds circle = CircularBounds.newInstance(center, /* radius = */ 5000);
final FindAutocompletePredictionsRequest autocompletePlacesRequest =
FindAutocompletePredictionsRequest.builder()
.setQuery("Sicilian piz")
.setRegionCode("ES")
.setLocationRestriction(circle)
.build());
placesClient.findAutocompletePredictions(autoCompletePlacesRequest)
.addOnSuccessListener(
(response) -> {
List<AutocompletePrediction> predictions = response.getResult().getAutocompletePredictions();
}
).addOnFailureListener(
exception -> {
Log.e(TAG, "some exception happened" + exception.getMessage());
})
);ऑटोकंप्लीट (नया) के जवाब
एपीआई,
Task
में
FindAutocompletePredictionsResponse
दिखाता है.
FindAutocompletePredictionsResponse
में, अनुमानित जगहों को दिखाने वाले ज़्यादा से ज़्यादा पांच
AutocompletePrediction
ऑब्जेक्ट की सूची होती है. अगर क्वेरी और फ़िल्टर करने की शर्तों के हिसाब से कोई जगह नहीं मिलती है, तो हो सकता है कि सूची खाली हो.
अनुमानित हर जगह के लिए, यहां दिए गए तरीके इस्तेमाल करके जगह की जानकारी हासिल की जा सकती है:
getFullText(CharacterStyle), किसी जगह की जानकारी का पूरा टेक्स्ट दिखाता है. यह प्राइमरी और सेकंडरी टेक्स्ट का कॉम्बिनेशन है. उदाहरण: "Eiffel Tower, Avenue Anatole France, Paris, France". इसके अलावा, इस तरीके से ब्यौरे के उन सेक्शन को हाइलाइट किया जा सकता है जो आपकी पसंद की स्टाइल के साथ खोज से मैच करते हैं. इसके लिए,CharacterStyleका इस्तेमाल करें.CharacterStyleपैरामीटर ज़रूरी नहीं है. अगर आपको किसी भी हिस्से को हाइलाइट नहीं करना है, तो इसे null पर सेट करें.getPrimaryText(CharacterStyle)किसी जगह के बारे में बताने वाला मुख्य टेक्स्ट दिखाता है. आम तौर पर, यह जगह का नाम होता है. उदाहरण: "कुतुब मीनार" और "123 पिट स्ट्रीट".getSecondaryText(CharacterStyle)किसी जगह की जानकारी का सहायक टेक्स्ट दिखाता है. उदाहरण के लिए, ऑटोकंप्लीट के सुझाव दिखाते समय, यह दूसरी लाइन के तौर पर काम आता है. उदाहरण: "एवेन्यू एनाटोल फ़्रांस, पेरिस, फ़्रांस" और "सिडनी, न्यू साउथ वेल्स".getPlaceId()अनुमानित जगह का आईडी दिखाता है. जगह का आईडी, टेक्स्ट के तौर पर मौजूद एक आइडेंटिफ़ायर होता है. इससे किसी जगह की खास तौर पर पहचान की जाती है. इसका इस्तेमाल करके,Placeऑब्जेक्ट को बाद में फिर से वापस लाया जा सकता है. ऑटोकंप्लीट की सुविधा में जगह के आईडी के बारे में ज़्यादा जानने के लिए, जगह की जानकारी (नया) देखें. जगह के आईडी के बारे में सामान्य जानकारी के लिए, जगह के आईडी के बारे में खास जानकारी देखें.getTypes()इस जगह से जुड़े टाइप की सूची दिखाता है.getDistanceMeters()इस जगह और अनुरोध में बताई गई शुरुआती जगह के बीच की सीधी दूरी को मीटर में दिखाता है.
ज़रूरी पैरामीटर
क्वेरी
वह टेक्स्ट स्ट्रिंग जिसे खोजना है. पूरे शब्द और सबस्ट्रिंग, जगहों के नाम, पते, और प्लस कोड डालें. ऑटोकंप्लीट (नया) सेवा, इस स्ट्रिंग के आधार पर संभावित मैच दिखाती है. साथ ही, नतीजों को उनकी प्रासंगिकता के आधार पर क्रम में लगाती है.
क्वेरी पैरामीटर सेट करने के लिए, FindAutocompletePredictionsRequest ऑब्जेक्ट बनाते समय setQuery() तरीके को कॉल करें.
ज़रूरी नहीं पैरामीटर
प्राइमरी टाइप
टेबल A या टेबल B में मौजूद टाइप की वैल्यू की सूची. इसमें ज़्यादा से ज़्यादा पांच वैल्यू हो सकती हैं. इसका इस्तेमाल, जवाब में मिलने वाली जगहों को फ़िल्टर करने के लिए किया जाता है. जवाब में शामिल होने के लिए, किसी जगह की जानकारी, प्राइमरी टाइप की बताई गई वैल्यू में से किसी एक से मैच होनी चाहिए.
किसी जगह के लिए, टेबल A या टेबल B में से सिर्फ़ एक मुख्य टाइप चुना जा सकता है. उदाहरण के लिए, मुख्य टाइप "mexican_restaurant" या "steak_house" हो सकता है.
अनुरोध को INVALID_REQUEST गड़बड़ी के साथ अस्वीकार कर दिया जाता है, अगर:
- पांच से ज़्यादा टाइप दिए गए हैं.
- किसी ऐसे टाइप की जानकारी दी गई हो जिसकी पहचान नहीं की जा सकी.
प्राइमरी टाइप पैरामीटर सेट करने के लिए, FindAutocompletePredictionsRequest ऑब्जेक्ट बनाते समय setTypesFilter() तरीके को कॉल करें.
देश
सिर्फ़ उन देशों के नतीजे शामिल करें जिनकी सूची दी गई है. इस सूची में, दो वर्णों वाली ज़्यादा से ज़्यादा 15 ccTLD ("टॉप-लेवल डोमेन") वैल्यू शामिल की जा सकती हैं. अगर इसे शामिल नहीं किया जाता है, तो जवाब पर कोई पाबंदी लागू नहीं होगी. उदाहरण के लिए, जर्मनी और फ़्रांस तक सीमित करने के लिए:
अगर locationRestriction और includedRegionCodes, दोनों की वैल्यू दी जाती हैं, तो नतीजे दोनों सेटिंग के इंटरसेक्शन वाले इलाके में दिखते हैं.
देशों के पैरामीटर को सेट करने के लिए, FindAutocompletePredictionsRequest ऑब्जेक्ट बनाते समय setCountries() तरीके को कॉल करें.
इनपुट ऑफ़सेट
क्वेरी में कर्सर की पोज़िशन बताने वाला यूनिकोड वर्ण ऑफ़सेट, जो शून्य से शुरू होता है. कर्सर की पोज़िशन से, अनुमानों पर असर पड़ सकता है. अगर यह खाली है, तो यह डिफ़ॉल्ट रूप से क्वेरी की लंबाई पर सेट हो जाता है.
इनपुट ऑफ़सेट पैरामीटर सेट करने के लिए, FindAutocompletePredictionsRequest ऑब्जेक्ट बनाते समय setInputOffset() तरीके को कॉल करें.
जगह के हिसाब से पक्षपात या जगह से जुड़ी पाबंदी
खोज के दायरे को तय करने के लिए, जगह की जानकारी के आधार पर खोज के नतीजे दिखाने या जगह की जानकारी के आधार पर खोज के नतीजों को सीमित करने की सुविधा का इस्तेमाल किया जा सकता है. हालांकि, दोनों का इस्तेमाल एक साथ नहीं किया जा सकता. जगह की पाबंदी का मतलब है कि नतीजे किसी खास इलाके के अंदर ही होने चाहिए. वहीं, जगह के हिसाब से नतीजे दिखाने का मतलब है कि नतीजे किसी खास इलाके के आस-पास के होने चाहिए. इन दोनों में मुख्य अंतर यह है कि जगह के हिसाब से नतीजे दिखाने की सुविधा का इस्तेमाल करने पर, तय किए गए इलाके से बाहर के नतीजे भी दिख सकते हैं.
जगह की जानकारी के आधार पर नतीजे दिखाना
खोजने के लिए कोई हिस्सा तय करता है. यह जगह, पाबंदी के तौर पर नहीं, बल्कि बायस के तौर पर काम करती है. इसलिए, हो सकता है कि तय की गई जगह से बाहर के नतीजे भी दिखें.
जगह के हिसाब से नतीजे दिखाने वाले पैरामीटर को सेट करने के लिए,
FindAutocompletePredictionsRequestऑब्जेक्ट बनाते समयsetLocationBias()तरीके को कॉल करें.जगह की जानकारी से जुड़ी पाबंदी
खोजने के लिए कोई हिस्सा तय करता है. तय किए गए इलाके से बाहर के नतीजे नहीं दिखाए जाते.
जगह की जानकारी से जुड़ी पाबंदी का पैरामीटर सेट करने के लिए,
FindAutocompletePredictionsRequestऑब्जेक्ट बनाते समयsetLocationRestriction()तरीके को कॉल करें.
जगह के हिसाब से नतीजे दिखाने या जगह के हिसाब से पाबंदी लगाने के लिए, आयताकार व्यूपोर्ट या सर्कल के तौर पर जगह की जानकारी दें.
सर्कल को सेंटर पॉइंट और मीटर में त्रिज्या से तय किया जाता है. रेडियस, 0.0 और 50000.0 के बीच होना चाहिए. इसमें ये दोनों भी शामिल हैं. डिफ़ॉल्ट वैल्यू 0.0 है. जगह की जानकारी पर पाबंदी लगाने के लिए, आपको दायरा 0.0 से ज़्यादा पर सेट करना होगा. ऐसा न होने पर, अनुरोध का कोई नतीजा नहीं मिलता.
रेक्टैंगल, अक्षांश-देशांतर व्यूपोर्ट होता है. इसे दो डायगनल के तौर पर दिखाया जाता है, जो
lowऔरhighपॉइंट के विपरीत होते हैं. व्यूपोर्ट को एक बंद इलाका माना जाता है. इसका मतलब है कि इसमें इसकी सीमा शामिल होती है. अक्षांश की सीमाएं -90 से 90 डिग्री के बीच होनी चाहिए. साथ ही, देशांतर की सीमाएं -180 से 180 डिग्री के बीच होनी चाहिए:- अगर
low=highहै, तो व्यूपोर्ट में सिर्फ़ वह पॉइंट शामिल होता है. - अगर
low.longitude>high.longitudeहै, तो देशांतर की रेंज को उलट दिया जाता है (व्यूपोर्ट, 180 डिग्री देशांतर लाइन को पार करता है). - अगर
low.longitude= -180 डिग्री औरhigh.longitude= 180 डिग्री है, तो व्यूपोर्ट में सभी देशांतर शामिल होते हैं. - अगर
low.longitude= 180 डिग्री औरhigh.longitude= -180 डिग्री है, तो देशांतर की रेंज खाली होती है.
lowऔरhigh, दोनों फ़ील्ड में वैल्यू डालना ज़रूरी है. साथ ही, बॉक्स खाली नहीं होना चाहिए. खाली व्यूपोर्ट की वजह से गड़बड़ी होती है.- अगर
शुरुआत की जगह
वह ऑरिजिन पॉइंट जहां से डेस्टिनेशन तक की सीधी दूरी का हिसाब लगाया जाता है. इसे getDistanceMeters() का इस्तेमाल करके ऐक्सेस किया जाता है. अगर यह वैल्यू नहीं दी जाती है, तो सीधी दूरी की जानकारी नहीं मिलेगी. अक्षांश और देशांतर निर्देशांक के तौर पर जानकारी देना ज़रूरी है:
ऑरिजिन पैरामीटर सेट करने के लिए, FindAutocompletePredictionsRequest ऑब्जेक्ट बनाते समय setOrigin() मेथड को कॉल करें.
क्षेत्र कोड
जवाब को फ़ॉर्मैट करने के लिए इस्तेमाल किया गया देश/इलाके का कोड. इसमें पते का फ़ॉर्मैट भी शामिल है. इसे ccTLD ("टॉप-लेवल डोमेन") की दो वर्णों वाली वैल्यू के तौर पर बताया गया है. ज़्यादातर ccTLD कोड, ISO 3166-1 कोड से मिलते-जुलते होते हैं. हालांकि, कुछ अपवाद भी होते हैं. उदाहरण के लिए, यूनाइटेड किंगडम का ccTLD "uk" (.co.uk) है, जबकि इसका आईएसओ 3166-1 कोड "gb" है. तकनीकी तौर पर, यह कोड "यूनाइटेड किंगडम ऑफ़ ग्रेट ब्रिटेन ऐंड नॉर्दर्न आयरलैंड" के लिए है.
अगर आपने कोई अमान्य देश/इलाका कोड डाला है, तो एपीआई INVALID_ARGUMENT गड़बड़ी का मैसेज दिखाएगा. लागू कानून के आधार पर, पैरामीटर से नतीजों पर असर पड़ सकता है.
देश/इलाके के कोड का पैरामीटर सेट करने के लिए, FindAutocompletePredictionsRequest ऑब्जेक्ट बनाते समय setRegionCode() तरीके को कॉल करें.
सेशन टोकन
सेशन टोकन, उपयोगकर्ता से जनरेट की गई स्ट्रिंग होती हैं. ये स्ट्रिंग, अपने-आप पूरा होने वाले सुझाव (नया) के कॉल को "सेशन" के तौर पर ट्रैक करती हैं. इनमें, विजेट और प्रोग्राम के हिसाब से किए गए कॉल, दोनों शामिल हैं. ऑटोकंप्लीट की सुविधा, सेशन टोकन का इस्तेमाल करती है. इससे, उपयोगकर्ता की ऑटोकंप्लीट खोज की क्वेरी और चुने गए चरणों को बिलिंग के मकसद से, अलग-अलग सेशन में ग्रुप किया जाता है. सेशन तब शुरू होता है, जब उपयोगकर्ता कोई क्वेरी टाइप करना शुरू करता है. साथ ही, यह तब खत्म होता है, जब वह कोई जगह चुनता है. हर सेशन में कई क्वेरी हो सकती हैं. इसके बाद, एक जगह चुनी जा सकती है. सेशन खत्म होने के बाद, टोकन अमान्य हो जाता है. आपके ऐप्लिकेशन को हर सेशन के लिए एक नया टोकन जनरेट करना होगा. हमारा सुझाव है कि आप प्रोग्राम के हिसाब से ऑटोकंप्लीट की सुविधा वाले सभी सेशन के लिए, सेशन टोकन का इस्तेमाल करें. जब किसी फ़्रैगमेंट को एम्बेड किया जाता है या इंटेंट का इस्तेमाल करके ऑटोकंप्लीट की सुविधा लॉन्च की जाती है, तो एपीआई अपने-आप इसका ध्यान रखता है.
ऑटोकंप्लीट की सुविधा, हर सेशन की पहचान करने के लिए
AutocompleteSessionToken
का इस्तेमाल करती है. हर नया सेशन शुरू होने पर, आपके ऐप्लिकेशन को एक नया सेशन टोकन पास करना चाहिए. इसके बाद, fetchPlace() को किए जाने वाले अगले कॉल में, जगह के आईडी के साथ वही टोकन पास करना चाहिए. इससे, उपयोगकर्ता की चुनी गई जगह की जानकारी हासिल की जा सकेगी.
सेशन टोकन पैरामीटर सेट करने के लिए, FindAutocompletePredictionsRequest ऑब्जेक्ट बनाते समय setSessionToken() तरीके को कॉल करें.
ज़्यादा जानकारी के लिए, सेशन टोकन देखें.
ऑटोकंप्लीट (नया) के उदाहरण
जगह की जानकारी पर पाबंदी और जगह के हिसाब से नतीजे दिखाने की सुविधा का इस्तेमाल करना
अपने-आप पूरा होने की सुविधा (नया वर्शन), खोज के दायरे को कंट्रोल करने के लिए, डिफ़ॉल्ट रूप से आईपी बायसिंग का इस्तेमाल करती है. आईपी बायसिंग की सुविधा चालू होने पर, एपीआई डिवाइस के आईपी पते का इस्तेमाल करके, नतीजों को बायस करता है. खोज के लिए किसी इलाके की जानकारी देने के लिए, जगह की पाबंदी या जगह के हिसाब से नतीजे दिखाने की सुविधा का इस्तेमाल किया जा सकता है. हालांकि, दोनों का इस्तेमाल एक साथ नहीं किया जा सकता.
जगह से जुड़ी पाबंदी से, खोज के लिए इलाके की जानकारी मिलती है. तय किए गए इलाके से बाहर के नतीजे नहीं दिखाए जाते. इस उदाहरण में, जगह की जानकारी पर पाबंदी लगाने की सुविधा का इस्तेमाल किया गया है. इससे, सैन फ़्रांसिस्को के आस-पास 5,000 मीटर के दायरे में मौजूद जगहों के लिए ही अनुरोध किया जा सकता है:
Places.initializeWithNewPlacesApiEnabled(context, apiKey);
final List<Field> placeFields = getPlaceFields();
LatLng center = new LatLng(37.7749, -122.4194);
CircularBounds circle = CircularBounds.newInstance(center, /* radius = */ 5000);
final FindAutocompletePredictionsRequest autocompletePlacesRequest =
FindAutocompletePredictionsRequest.builder()
.setQuery("Amoeba")
.setLocationRestriction(circle)
.build());
placesClient.findAutocompletePredictions(autoCompletePlacesRequest)
.addOnSuccessListener(
(response) -> {
List<AutocompletePrediction> predictions = response.getResult().getAutocompletePredictions();
}
).addOnFailureListener(
exception -> {
Log.e(TAG, "some exception happened" + exception.getMessage());
})
);जगह के हिसाब से नतीजे दिखाने की सुविधा में, जगह की जानकारी का इस्तेमाल बायस के तौर पर किया जाता है. इसका मतलब है कि चुनी गई जगह के आस-पास के नतीजे दिखाए जा सकते हैं. इनमें, चुनी गई जगह से बाहर के नतीजे भी शामिल हो सकते हैं. अगले उदाहरण में, जगह के हिसाब से नतीजे दिखाने की सुविधा का इस्तेमाल करने के लिए, पिछले अनुरोध में बदलाव किया गया है:
Places.initializeWithNewPlacesApiEnabled(context, apiKey);
final List<Field> placeFields = getPlaceFields();
LatLng center = new LatLng(37.7749, -122.4194);
CircularBounds circle = CircularBounds.newInstance(center, /* radius = */ 5000);
final FindAutocompletePredictionsRequest autocompletePlacesRequest =
FindAutocompletePredictionsRequest.builder()
.setQuery("Amoeba")
.setLocationBias(circle)
.build());
placesClient.findAutocompletePredictions(autoCompletePlacesRequest)
.addOnSuccessListener(
(response) -> {
List<AutocompletePrediction> predictions = response.getResult().getAutocompletePredictions();
}
).addOnFailureListener(
exception -> {
Log.e(TAG, "some exception happened" + exception.getMessage());
})
);प्राइमरी टाइप का इस्तेमाल करना
प्राइमरी टाइप पैरामीटर का इस्तेमाल करके, किसी अनुरोध के नतीजों को सीमित किया जा सकता है. इससे नतीजे, टेबल A और टेबल B में दिए गए किसी खास टाइप के हिसाब से ही दिखेंगे. ज़्यादा से ज़्यादा पांच वैल्यू का अरे तय किया जा सकता है. अगर इसे शामिल नहीं किया जाता है, तो सभी तरह के विज्ञापन दिखाए जाते हैं.
यहां दिए गए उदाहरण में, "Soccer" की क्वेरी स्ट्रिंग के बारे में बताया गया है. साथ ही, नतीजों को "sporting_goods_store" टाइप की जगहों तक सीमित करने के लिए, प्राइमरी टाइप पैरामीटर का इस्तेमाल किया गया है:
Places.initializeWithNewPlacesApiEnabled(context, apiKey);
final List<Field> placeFields = getPlaceFields();
final List<Place.Field> primaryTypes = Arrays.asList("sporting_goods_store");
LatLng center = new LatLng(37.7749, -122.4194);
CircularBounds circle = CircularBounds.newInstance(center, /* radius = */ 5000);
final FindAutocompletePredictionsRequest autocompletePlacesRequest =
FindAutocompletePredictionsRequest.builder()
.setQuery("Soccer")
.setIncludedPrimaryTypes(primaryTypes)
.setLocationBias(circle)
.build());
placesClient.findAutocompletePredictions(autoCompletePlacesRequest)
.addOnSuccessListener(
(response) -> {
List<AutocompletePrediction> predictions = response.getResult().getAutocompletePredictions();
}
).addOnFailureListener(
exception -> {
Log.e(TAG, "some exception happened" + exception.getMessage());
})
);अगर आपने primary types पैरामीटर को शामिल नहीं किया है, तो नतीजों में ऐसी जगहों की जानकारी शामिल हो सकती है जो शायद आपको नहीं चाहिए. जैसे, "athletic_field".
ऑरिजिन का इस्तेमाल करना
अनुरोध में origin पैरामीटर को अक्षांश और देशांतर निर्देशांक के तौर पर शामिल करने पर, एपीआई जवाब में शुरुआत की जगह से मंज़िल तक की सीधी दूरी को शामिल करता है. इसे getDistanceMeters() का इस्तेमाल करके ऐक्सेस किया जाता है.
इस उदाहरण में, शुरुआत की जगह को सैन फ़्रांसिस्को के बीच में सेट किया गया है:
Places.initializeWithNewPlacesApiEnabled(context, apiKey);
final List<Field> placeFields = getPlaceFields();
LatLng center = new LatLng(37.7749, -122.4194);
CircularBounds circle = CircularBounds.newInstance(center, /* radius = */ 5000);
final FindAutocompletePredictionsRequest autocompletePlacesRequest =
FindAutocompletePredictionsRequest.builder()
.setQuery("Amoeba")
.setOrigin(center)
.setLocationRestriction(circle)
.build());
placesClient.findAutocompletePredictions(autoCompletePlacesRequest)
.addOnSuccessListener(
(response) -> {
List<AutocompletePrediction> predictions = response.getResult().getAutocompletePredictions();
}
).addOnFailureListener(
exception -> {
Log.e(TAG, "some exception happened" + exception.getMessage());
})
);ऑटोकंप्लीट (नया) ऑप्टिमाइज़ेशन
इस सेक्शन में, ऑटोकंप्लीट (नया) सेवा का ज़्यादा से ज़्यादा फ़ायदा पाने के सबसे सही तरीके बताए गए हैं.
यहां कुछ सामान्य दिशा-निर्देश दिए गए हैं:
- काम करने वाला यूज़र इंटरफ़ेस बनाने का सबसे तेज़ तरीका है, Maps JavaScript API ऑटोकंप्लीट (नया) विजेट, Places SDK for Android ऑटोकंप्लीट (नया) विजेट, या Places SDK for iOS ऑटोकंप्लीट (नया) विजेट का इस्तेमाल करना.
- शुरुआत से ही, ऑटोकंप्लीट (नई) सुविधा के ज़रूरी डेटा फ़ील्ड को समझें.
- जगह के हिसाब से नतीजे दिखाने और जगह के हिसाब से पाबंदी लगाने वाले फ़ील्ड भरना ज़रूरी नहीं है. हालांकि, इनसे ऑटोकंप्लीट की सुविधा की परफ़ॉर्मेंस पर काफ़ी असर पड़ सकता है.
- गड़बड़ी को मैनेज करने की सुविधा का इस्तेमाल करें, ताकि एपीआई से गड़बड़ी मिलने पर आपका ऐप्लिकेशन सही तरीके से काम करता रहे.
- पक्का करें कि आपका ऐप्लिकेशन, कोई विकल्प न चुने जाने पर उपयोगकर्ताओं को आगे बढ़ने का तरीका बताता हो.
लागत को ऑप्टिमाइज़ करने के सबसे सही तरीके
लागत को ऑप्टिमाइज़ करने की बुनियादी सुविधा
ऑटोकंप्लीट (नया) सेवा का इस्तेमाल करने की लागत को ऑप्टिमाइज़ करने के लिए, Place Details (नया) और ऑटोकंप्लीट (नया) विजेट में फ़ील्ड मास्क का इस्तेमाल करें. इससे आपको सिर्फ़ ऑटोकंप्लीट (नया) डेटा फ़ील्ड दिखेंगे, जिनकी आपको ज़रूरत है.
लागत को ऑप्टिमाइज़ करने की बेहतर सुविधा
ऑटोकंप्लीट (नया) सुविधा को प्रोग्राम के हिसाब से लागू करें, ताकि एसकेयू: ऑटोकंप्लीट सुविधा के अनुरोध की कीमत को ऐक्सेस किया जा सके. साथ ही, चुनी गई जगह के लिए, Place Details (नया) के बजाय Geocoding API के नतीजों का अनुरोध किया जा सके. अगर यहां दी गई दोनों शर्तें पूरी होती हैं, तो Geocoding API के साथ हर अनुरोध के हिसाब से कीमत तय करने का मॉडल, हर सेशन (सेशन के हिसाब से) के हिसाब से कीमत तय करने के मॉडल की तुलना में ज़्यादा किफ़ायती होता है:
- अगर आपको उपयोगकर्ता की चुनी गई जगह का सिर्फ़ अक्षांश और देशांतर या पता चाहिए, तो Geocoding API यह जानकारी, Place Details (New) कॉल से कम कीमत में उपलब्ध कराता है.
- अगर उपयोगकर्ता, ऑटोकंप्लीट (नया) के सुझावों के लिए किए गए औसतन चार या इससे कम अनुरोधों में से, ऑटोकंप्लीट के किसी सुझाव को चुनते हैं, तो हर अनुरोध के हिसाब से कीमत तय करने का विकल्प, हर सेशन के हिसाब से कीमत तय करने के विकल्प की तुलना में ज़्यादा किफ़ायती हो सकता है.
| आपके ऐप्लिकेशन के लिए क्या ज़रूरी है | किसी उपयोगकर्ता के सुझाव चुनने से पहले, ऑटोकंप्लीट (नया) के लिए किए गए अनुरोधों की औसत संख्या | लागू करने के सुझाव |
|---|---|---|
| पते और जगह की जानकारी के अलावा, जगह की अन्य जानकारी. जैसे, जगह का नाम, कारोबार की स्थिति या कारोबार के खुले होने का समय | कोई भी नंबर | जगह की जानकारी (नया) के साथ सेशन-आधारित ऑटोकंप्लीट (नया) |
| चुने गए अनुमान का सिर्फ़ पता और अक्षांश/देशांतर | चार या इससे कम | Geocoding API के साथ, हर अनुरोध के लिए ऑटोकंप्लीट (नया) सुविधा |
| चुने गए अनुमान का सिर्फ़ पता और अक्षांश/देशांतर | चार से ज़्यादा | सिर्फ़ पते की जानकारी देने वाले ऐप्लिकेशन के लिए, सेशन के हिसाब से ऑटोकंप्लीट (नया) |
ऑटोकंप्लीट (नया) के इस्तेमाल की परफ़ॉर्मेंस के आधार पर, आपके ऐप्लिकेशन के लिए Geocoding API, Place Details (नया) की तुलना में ज़्यादा किफ़ायती विकल्प हो सकता है. हर ऐप्लिकेशन के लिए, अपने-आप पूरा होने वाले सुझाव (नया वर्शन) की सुविधा की परफ़ॉर्मेंस अलग-अलग होती है. यह इस बात पर निर्भर करती है कि उपयोगकर्ता क्या जानकारी डाल रहे हैं, ऐप्लिकेशन का इस्तेमाल कहां किया जा रहा है, और परफ़ॉर्मेंस को ऑप्टिमाइज़ करने के सबसे सही तरीके लागू किए गए हैं या नहीं.
टेबल के लिए अनुरोधों की औसत संख्या का पता लगाने के लिए, यह विश्लेषण करें कि आपके ऐप्लिकेशन में, अपने-आप पूरा होने वाले सुझाव (नया) को चुनने से पहले, कोई उपयोगकर्ता औसतन कितने वर्ण टाइप करता है.
Place Details (New) के साथ, सेशन के हिसाब से ऑटोकंप्लीट (नई) की सुविधा
Place Details (नया) के साथ, सेशन के हिसाब से ऑटोकंप्लीट (नया) सुविधा का इस्तेमाल करें.
आपके ऐप्लिकेशन को जगह की जानकारी (नया) की ज़रूरत होती है. जैसे, जगह का नाम, कारोबार की स्थिति या कारोबार के खुले होने का समय. इसलिए, ऑटोकंप्लीट (नया) की सुविधा को लागू करने के लिए, आपको हर सेशन के लिए सेशन टोकन का इस्तेमाल करना चाहिए. इसके अलावा, लागू होने वाले Places एसकेयू का इस्तेमाल भी करना चाहिए. यह टोकन, प्रोग्राम के हिसाब से या JavaScript, Android या iOS विजेट में पहले से मौजूद होता है. यह इस बात पर निर्भर करता है कि आपने जगह की जानकारी के किन डेटा फ़ील्ड का अनुरोध किया है.1
विजेट लागू करना
सेशन मैनेजमेंट की सुविधा,
JavaScript,
Android,
या iOS
विजेट में अपने-आप शामिल हो जाती है. इसमें, चुने गए सुझाव पर ऑटोकंप्लीट (नया) और जगह की जानकारी (नया), दोनों के अनुरोध शामिल होते हैं. fields पैरामीटर की जानकारी ज़रूर दें, ताकि यह पक्का किया जा सके कि आपने सिर्फ़ उन डेटा फ़ील्ड के लिए अनुरोध किया है जिनकी आपको ज़रूरत है.
प्रोग्राम के हिसाब से लागू करना
अपने ऑटोकंप्लीट (नया) अनुरोधों के साथ,
सेशन टोकन
का इस्तेमाल करें. चुने गए सुझाव के बारे में, जगह की जानकारी (नई सुविधा) का अनुरोध करते समय, ये पैरामीटर शामिल करें:
- ऑटोकंप्लीट (नया) के रिस्पॉन्स से मिला जगह का आईडी
- अपने-आप पूरा होने वाले सुझाव (नया) के अनुरोध में इस्तेमाल किया गया सेशन टोकन
fieldsपैरामीटर, जो आपको ज़रूरी ऑटोकंप्लीट (नया) डेटा फ़ील्ड के बारे में बताता है
Geocoding API के साथ, हर अनुरोध के लिए Autocomplete (New) की सुविधा
सेशन टोकन के बिना, प्रोग्राम के हिसाब से ऑटोकंप्लीट (नया) सुविधा लागू करना और सुझाई गई जगह पर Geocoding API को कॉल करना.
Geocoding API, पते और अक्षांश/देशांतर के निर्देशांक उपलब्ध कराता है.
चार ऑटोकंप्लीट अनुरोध और चुनी गई जगह के सुझाव के बारे में Geocoding API कॉल करने की कीमत, ऑटोकंप्लीट (नया) के हर सेशन की कीमत से कम है.1
परफ़ॉर्मेंस के सबसे सही तरीके अपनाएं, ताकि आपके उपयोगकर्ताओं को कम से कम वर्णों में वह अनुमान मिल सके जो वे खोज रहे हैं.
सिर्फ़ पते की जानकारी देने वाले ऐप्लिकेशन के लिए, सेशन के हिसाब से ऑटोकंप्लीट (नया)
Place Details (नया) के साथ, सेशन के हिसाब से ऑटोकंप्लीट (नया) सुविधा का इस्तेमाल करें.
किसी उपयोगकर्ता के ऑटोकंप्लीट (नया) सुविधा से मिले सुझाव को चुनने से पहले, आपके अनुरोधों की औसत संख्या, हर सेशन की कीमत से ज़्यादा होती है. इसलिए, ऑटोकंप्लीट (नया) सुविधा को लागू करने के लिए, ऑटोकंप्लीट (नया) सुविधा के अनुरोधों और उससे जुड़ी जगह की जानकारी (नया) के अनुरोध, दोनों के लिए सेशन टोकन का इस्तेमाल करना चाहिए
हर सेशन.
1
विजेट लागू करना
सेशन मैनेजमेंट की सुविधा,
JavaScript,
Android,
या iOS
विजेट में अपने-आप शामिल हो जाती है. इसमें, ऑटोकंप्लीट (नया) के अनुरोध और चुने गए सुझाव पर जगह की जानकारी (नया) का अनुरोध, दोनों शामिल हैं. fields पैरामीटर की जानकारी ज़रूर दें, ताकि यह पक्का किया जा सके कि आपने सिर्फ़ ज़रूरी फ़ील्ड के लिए अनुरोध किया है.
प्रोग्राम के हिसाब से लागू करना
अपने ऑटोकंप्लीट (नया) अनुरोधों के साथ,
सेशन टोकन
का इस्तेमाल करें.
चुने गए अनुमान के बारे में Place Details (New) का अनुरोध करते समय, ये पैरामीटर शामिल करें:
- ऑटोकंप्लीट (नया) के रिस्पॉन्स से मिला जगह का आईडी
- अपने-आप पूरा होने वाले सुझाव (नया) के अनुरोध में इस्तेमाल किया गया सेशन टोकन
fieldsपैरामीटर, जो पते और ज्यामिति जैसे फ़ील्ड के बारे में बताता है
ऑटोकंप्लीट (नया) के अनुरोधों में देरी करने पर विचार करें
ऑटोकंप्लीट (नया) के अनुरोध में तब तक देरी करने जैसी रणनीतियां अपनाई जा सकती हैं, जब तक कि उपयोगकर्ता पहले तीन या चार वर्ण टाइप न कर ले. इससे आपके ऐप्लिकेशन को कम अनुरोध करने पड़ेंगे. उदाहरण के लिए, उपयोगकर्ता के तीसरा वर्ण टाइप करने के बाद, हर वर्ण के लिए Autocomplete (New) के अनुरोध करने का मतलब है कि अगर उपयोगकर्ता सात वर्ण टाइप करता है, तो वह उस सुझाव को चुनता है जिसके लिए आपने एक Geocoding API अनुरोध किया है. इसकी कुल लागत, हर अनुरोध के लिए चार Autocomplete (New) + Geocoding के लिए होगी.1
अगर अनुरोधों में देरी करने से, प्रोग्राम के हिसाब से किए जाने वाले अनुरोधों की औसत संख्या चार से कम हो सकती है, तो Geocoding API के साथ ऑटोकंप्लीट (नया) को लागू करने के लिए, दिए गए दिशा-निर्देशों का पालन करें. ध्यान दें कि अनुरोधों में देरी होने पर, उपयोगकर्ता को इंतज़ार करना पड़ सकता है. ऐसा हो सकता है कि उपयोगकर्ता को हर नए कीस्ट्रोक के साथ सुझाव देखने की उम्मीद हो.
परफ़ॉर्मेंस के सबसे सही तरीके अपनाएं, ताकि आपके उपयोगकर्ताओं को कम वर्णों में ही वह अनुमान मिल सके जो वे खोज रहे हैं.
-
लागत के बारे में जानने के लिए, Google Maps Platform की कीमत की सूचियां देखें.
परफ़ॉर्मेंस को बेहतर बनाने के सबसे सही तरीके
यहां दिए गए दिशा-निर्देशों में, ऑटोकंप्लीट (नया) की परफ़ॉर्मेंस को ऑप्टिमाइज़ करने के तरीके बताए गए हैं:
- अपने ऑटोकंप्लीट (नया) लागू करने के तरीके में, देश से जुड़ी पाबंदियां, जगह के हिसाब से नतीजे दिखाने की सुविधा, और (प्रोग्राम के हिसाब से लागू करने के लिए) भाषा से जुड़ी प्राथमिकता जोड़ें. विजेट के लिए, भाषा की प्राथमिकता सेट करने की ज़रूरत नहीं होती. ऐसा इसलिए, क्योंकि वे उपयोगकर्ता के ब्राउज़र या मोबाइल डिवाइस से भाषा से जुड़ी प्राथमिकताएं चुनते हैं.
- अगर Autocomplete (New) के साथ कोई मैप मौजूद है, तो मैप व्यूपोर्ट के हिसाब से जगह की जानकारी को बायस किया जा सकता है.
- कभी-कभी ऐसा होता है कि उपयोगकर्ता, ऑटोकंप्लीट (नया) के किसी भी सुझाव को नहीं चुनता. आम तौर पर, ऐसा इसलिए होता है, क्योंकि उन सुझावों में से कोई भी सुझाव, उपयोगकर्ता के काम का नहीं होता. ऐसे में, उपयोगकर्ता के ओरिजनल इनपुट का फिर से इस्तेमाल करके, ज़्यादा काम के नतीजे पाने की कोशिश की जा सकती है:
- अगर आपको लगता है कि उपयोगकर्ता सिर्फ़ पते की जानकारी डालेगा, तो Geocoding API को किए गए कॉल में, उपयोगकर्ता के ओरिजनल इनपुट का फिर से इस्तेमाल करें.
- अगर आपको लगता है कि उपयोगकर्ता किसी खास जगह के नाम या पते के लिए क्वेरी डालेगा, तो Place Details (New) अनुरोध का इस्तेमाल करें. अगर आपको सिर्फ़ किसी खास इलाके के नतीजे चाहिए, तो जगह के हिसाब से नतीजे दिखाने की सुविधा का इस्तेमाल करें.
- उपयोगकर्ता, सब-प्रमिस पते डालते हैं. जैसे, किसी इमारत में मौजूद खास यूनिट या अपार्टमेंट के पते. उदाहरण के लिए, चेक गणराज्य का पता "Stroupežnického 3191/17, Praha" डालने पर, ऑटोकंप्लीट (नया) की सुविधा से अधूरा सुझाव मिलता है.
- उपयोगकर्ता, न्यूयॉर्क शहर में "23-30 29th St, Queens" या हवाई के काउआई द्वीप पर "47-380 Kamehameha Hwy, Kaneohe" जैसे सड़क के सेगमेंट के प्रीफ़िक्स वाले पते डालते हैं.
जगह के हिसाब से नतीजे दिखाना
location पैरामीटर और radius पैरामीटर को पास करके, नतीजों को किसी खास इलाके के हिसाब से बायस करें. इससे, ऑटोकंप्लीट (नया) को तय किए गए इलाके में नतीजे दिखाने को प्राथमिकता देने का निर्देश मिलता है. तय किए गए इलाके से बाहर के नतीजे अब भी दिख सकते हैं. includedRegionCodes पैरामीटर का इस्तेमाल करके, नतीजों को फ़िल्टर किया जा सकता है. इससे सिर्फ़ किसी देश में मौजूद जगहों को दिखाया जा सकता है.
जगह की जानकारी से जुड़ी पाबंदी
locationRestriction पैरामीटर पास करके, नतीजों को किसी खास इलाके तक सीमित करना.
आपके पास location और radius पैरामीटर से तय किए गए इलाके के हिसाब से नतीजों को सीमित करने का विकल्प भी है. इसके लिए, आपको locationRestriction पैरामीटर जोड़ना होगा. इससे, ऑटोकंप्लीट (नया) को उस इलाके के सिर्फ़ नतीजे दिखाने का निर्देश मिलता है.