আপনি একটি নির্দিষ্ট স্থাপনা বা আগ্রহের স্থান সম্পর্কে আরও বিশদ বিবরণের অনুরোধ করতে পারেন তার স্থান আইডি ব্যবহার করে এবং একটি স্থানের বিবরণ (নতুন) অনুরোধ করে। স্থানের বিবরণ (নতুন) নির্দেশিত স্থান সম্পর্কে আরও ব্যাপক তথ্য প্রদান করে, যেমন এর সম্পূর্ণ ঠিকানা, ফোন নম্বর, ব্যবহারকারীর রেটিং এবং পর্যালোচনা।
একটি স্থান আইডি প্রাপ্ত করার অনেক উপায় আছে. আপনি ব্যবহার করতে পারেন:
স্থান বিবরণ (নতুন) অনুরোধ
আপনি PlacesClient.fetchPlace()
এ কল করে এবং একটি FetchPlaceRequest
অবজেক্ট পাস করে একটি জায়গার আইডি এবং ফিল্ড তালিকা , সেইসাথে যেকোনো ঐচ্ছিক প্যারামিটারগুলি পাস করে স্থানের বিশদ বিবরণের অনুরোধ করতে পারেন:
// Define a place ID.
final String placeId = "INSERT_PLACE_ID_HERE";
// Specify the list of fields to return.
final List<Place.Field> placeFields = Arrays.asList("INSERT_PLACE_FIELDS_HERE");
// Construct a request object, passing the place ID and field list.
final FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields);
// Pass the request object and make the request
Task<FetchPlaceResponse> placeTask = placesClient.fetchPlace(request);
স্থান বিবরণ (নতুন) প্রতিক্রিয়া
স্থানের বিশদ বিবরণ (নতুন) একটি Place
বস্তুর আকারে ডেটা প্রদান করে, যার মধ্যে শুধুমাত্র সেই ক্ষেত্রগুলি অন্তর্ভুক্ত থাকে যা আপনি ক্ষেত্র তালিকা ব্যবহার করে অনুরোধ করেছেন। স্থানের ডেটা ফলাফল খালি হতে পারে না, তাই শুধুমাত্র ডেটা সহ স্থানের ফলাফলগুলি ফেরত দেওয়া হয় (উদাহরণস্বরূপ, যদি অনুরোধ করা জায়গায় কোনও ফটো না থাকে তবে ফটো ক্ষেত্রটি ফলাফলে উপস্থিত থাকবে না)।
ডেটা ক্ষেত্রগুলি অ্যাক্সেস করতে, সংশ্লিষ্ট পদ্ধতিতে কল করুন। উদাহরণস্বরূপ, স্থানের নাম অ্যাক্সেস করতে, getName()
কল করুন।
প্রয়োজনীয় পরামিতি
FetchPlaceRequest
এর জন্য প্রয়োজনীয় প্যারামিটারগুলি হল:
স্থান আইডি
একটি পাঠ্য শনাক্তকারী যা একটি স্থানকে অনন্যভাবে সনাক্ত করে, একটি পাঠ্য অনুসন্ধান (নতুন) , কাছাকাছি অনুসন্ধান (নতুন) বা স্বয়ংসম্পূর্ণ (নতুন) থেকে ফিরে আসে৷ স্থান আইডি সম্পর্কে আরও তথ্যের জন্য, স্থান আইডি ওভারভিউ দেখুন।
ক্ষেত্র তালিকা
আপনি যখন একটি স্থানের অনুরোধ করেন, তখন আপনাকে অবশ্যই নির্দিষ্ট করতে হবে কোন স্থানের ডেটা ফেরত দিতে হবে৷ এটি করার জন্য,
Place.Field
একটি তালিকা পাস করুন। প্রতিক্রিয়ায় প্রত্যাবর্তিত ক্ষেত্রগুলির কোনও ডিফল্ট তালিকা নেই।আপনি অপ্রয়োজনীয় ডেটার অনুরোধ করবেন না তা নিশ্চিত করার জন্য ক্ষেত্র তালিকাগুলি একটি ভাল নকশা অনুশীলন, যা অপ্রয়োজনীয় প্রক্রিয়াকরণের সময় এবং বিলিং চার্জ এড়াতে সহায়তা করে৷ এই তালিকাটি একটি গুরুত্বপূর্ণ বিবেচনা কারণ এটি প্রতিটি অনুরোধের জন্য খরচকে প্রভাবিত করে৷ আরও তথ্যের জন্য, ব্যবহার এবং বিলিং দেখুন।
নিম্নলিখিত ক্ষেত্রগুলির মধ্যে এক বা একাধিক নির্দিষ্ট করুন:
নিম্নলিখিত ক্ষেত্রগুলি স্থানের বিবরণ অপরিহার্য আইডি শুধুমাত্র SKU ট্রিগার করে:
Place.Field.DISPLAY_NAME
Place.Field.ID
Place.Field.PHOTO_METADATAS
Place.Field.RESOURCE_NAME
নিম্নলিখিত ক্ষেত্রগুলি স্থানের বিবরণ অপরিহার্য SKU ট্রিগার করে:
Place.Field.ADDRESS_COMPONENTS
ADR_FORMAT_ADDRESS
Place.Field.FORMATTED_ADDRESS
Place.Field.LOCATION
Place.Field.PLUS_CODE
Place.Field.SHORT_FORMATTED_ADDRESS
Place.Field.TYPES
Place.Field.VIEWPORT
নিম্নলিখিত ক্ষেত্রগুলি স্থানের বিবরণ প্রো SKU কে ট্রিগার করে:
Place.Field.ACCESSIBILITY_OPTIONS
Place.Field.BUSINESS_STATUS
Place.Field.GOOGLE_MAPS_URI
Place.Field.ICON_BACKGROUND_COLOR
Place.Field.ICON_MASK_URL
Place.Field.PRIMARY_TYPE
Place.Field.PRIMARY_TYPE_DISPLAY_NAME
Place.Field.SUB_DESTINATIONS
Place.Field.UTC_OFFSET
নিম্নলিখিত ক্ষেত্রগুলি স্থানের বিবরণ এন্টারপ্রাইজ SKU ট্রিগার করে:
Place.Field.CURRENT_OPENING_HOURS
Place.Field.CURRENT_SECONDARY_OPENING_HOURS
Place.Field.INTERNATIONAL_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.WEBSITE_URI
নিম্নলিখিত ক্ষেত্রগুলি স্থানের বিবরণ এন্টারপ্রাইজ প্লাস SKU ট্রিগার করে:
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
ঐচ্ছিক পরামিতি
FetchPlaceRequest
জন্য ঐচ্ছিক পরামিতি হল:
অঞ্চল কোড
উত্তর ফর্ম্যাট করতে ব্যবহৃত অঞ্চল কোড, একটি দুই-অক্ষরের CLDR কোড মান হিসাবে নির্দিষ্ট করা হয়েছে। কোন ডিফল্ট মান নেই।
যদি উত্তরে
Place.Field.FORMATTED_ADDRESS
ক্ষেত্রের দেশের নামregionCode
সাথে মিলে যায়, তাহলে দেশের কোডPlace.Field.FORMATTED_ADDRESS
থেকে বাদ দেওয়া হবে।কিছু উল্লেখযোগ্য ব্যতিক্রম সহ বেশিরভাগ CLDR কোডগুলি ISO 3166-1 কোডগুলির সাথে অভিন্ন৷ উদাহরণস্বরূপ, ইউনাইটেড কিংডমের ccTLD হল "uk" (.co.uk) যেখানে এর ISO 3166-1 কোড হল "gb" (প্রযুক্তিগতভাবে "The United Kingdom of Great Britain and Northern Ireland" এর সত্তার জন্য)। প্যারামিটার প্রযোজ্য আইনের উপর ভিত্তি করে ফলাফলকে প্রভাবিত করতে পারে।
অঞ্চল কোড প্যারামিটার সেট করতে,
FetchPlaceRequest
অবজেক্ট তৈরি করার সময়setRegionCode()
পদ্ধতিতে কল করুন।সেশন টোকেন
সেশন টোকেন হল ব্যবহারকারী-উত্পাদিত স্ট্রিং যা স্বয়ংসম্পূর্ণ (নতুন) কলগুলিকে "সেশন" হিসাবে ট্র্যাক করে। স্বয়ংসম্পূর্ণ (নতুন) বিলিং উদ্দেশ্যে একটি পৃথক অধিবেশনে একটি ব্যবহারকারী স্বয়ংসম্পূর্ণ অনুসন্ধানের প্রশ্ন এবং স্থান নির্বাচন পর্যায়গুলিকে গ্রুপ করতে সেশন টোকেন ব্যবহার করে। সেশন টোকেনগুলি স্থানের বিবরণ (নতুন) কলগুলিতে প্রেরণ করা হয় যা স্বয়ংসম্পূর্ণ (নতুন) কলগুলি অনুসরণ করে। আরও তথ্যের জন্য, সেশন টোকেন দেখুন।
সেশন টোকেন প্যারামিটার সেট করতে,
FetchPlaceRequest
অবজেক্ট তৈরি করার সময়setSessionToken()
পদ্ধতিতে কল করুন।
স্থান বিবরণ উদাহরণ
নিম্নলিখিত উদাহরণটি নিউ ইয়র্ক সিটির এম্পায়ার স্টেট বিল্ডিংয়ের জন্য ID
, DISPLAY_NAME
এবং FORMATTED_ADDRESS
ক্ষেত্রগুলির অনুরোধ করে৷
// Define a place ID.
final String placeId = "ChIJaXQRs6lZwokRY6EFpJnhNNE";
// Specify the list of fields to return.
final List<Place.Field> placeFields = Arrays.asList(Place.Field.ID, Place.Field.DISPLAY_NAME, Place.Field.FORMATTED_ADDRESS);
// Construct a request object, passing the place ID and field list.
final FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields);
// Pass the request object and make the request
Task<FetchPlaceResponse> placeTask = placesClient.fetchPlace(request);