কাছাকাছি অনুসন্ধান (নতুন)

ইউরোপীয় অর্থনৈতিক অঞ্চল (EEA) ডেভেলপাররা

একটি কাছাকাছি অনুসন্ধান (নতুন) অনুরোধ বৃত্তের কেন্দ্রবিন্দুর অক্ষাংশ এবং দ্রাঘিমাংশ স্থানাঙ্ক এবং মিটারে ব্যাসার্ধ দ্বারা সংজ্ঞায়িত একটি বৃত্ত হিসাবে নির্দিষ্ট অঞ্চল অনুসন্ধানের জন্য ইনপুট হিসাবে গ্রহণ করে। অনুরোধটি নির্দিষ্ট অনুসন্ধান এলাকার মধ্যে মিলিত স্থানগুলির একটি তালিকা প্রদান করে, প্রতিটি GMSPlace বস্তু দ্বারা প্রতিনিধিত্ব করা হয়।

ডিফল্টরূপে, উত্তরে অনুসন্ধান এলাকার মধ্যে সকল ধরণের স্থান থাকে। আপনি ঐচ্ছিকভাবে উত্তরে অন্তর্ভুক্ত বা বাদ দেওয়ার জন্য স্থানের ধরণের তালিকা নির্দিষ্ট করে প্রতিক্রিয়াটি ফিল্টার করতে পারেন। উদাহরণস্বরূপ, আপনি উত্তরে শুধুমাত্র "রেস্তোরাঁ", "বেকারি" এবং "ক্যাফে" ধরণের স্থান অন্তর্ভুক্ত করার জন্য নির্দিষ্ট করতে পারেন, অথবা "স্কুল" ধরণের সমস্ত স্থান বাদ দিতে পারেন।

কাছাকাছি অনুসন্ধান (নতুন) অনুরোধ

GMSPlacesClient searchNearbyWithRequest: এ কল করে একটি Nearby Search অনুরোধ করুন, একটি GMSPlaceSearchNearbyRequest অবজেক্ট পাস করুন যা অনুরোধের প্যারামিটার এবং একটি কলব্যাক পদ্ধতি, যেমন GMSPlaceSearchNearbyResultCallback , নির্ধারণ করে, প্রতিক্রিয়া পরিচালনা করার জন্য।

GMSPlaceSearchNearbyRequest অবজেক্ট অনুরোধের জন্য প্রয়োজনীয় এবং ঐচ্ছিক সকল প্যারামিটার নির্দিষ্ট করে। প্রয়োজনীয় প্যারামিটারগুলির মধ্যে রয়েছে:

  • GMSPlace অবজেক্টে ফেরত পাঠানোর জন্য ফিল্ডের তালিকা, যাকে ফিল্ড মাস্কও বলা হয়, GMSPlaceProperty দ্বারা সংজ্ঞায়িত। যদি আপনি ফিল্ড তালিকায় কমপক্ষে একটি ফিল্ড নির্দিষ্ট না করেন, অথবা যদি আপনি ফিল্ড তালিকাটি বাদ দেন, তাহলে কলটি একটি ত্রুটি ফেরত পাঠায়।
  • অবস্থান সীমাবদ্ধতা , যার অর্থ অনুসন্ধান এলাকা সংজ্ঞায়িত বৃত্ত।

এই উদাহরণে কাছাকাছি অনুসন্ধান অনুরোধটি উল্লেখ করে যে প্রতিক্রিয়া GMSPlace অবজেক্টগুলিতে অনুসন্ধান ফলাফলে প্রতিটি GMSPlace অবজেক্টের জন্য স্থানের নাম ( GMSPlacePropertyName ) এবং স্থান স্থানাঙ্ক ( GMSPlacePropertyCoordinate ) রয়েছে। এটি শুধুমাত্র "রেস্তোরাঁ" এবং "ক্যাফে" ধরণের স্থানগুলি ফেরত দেওয়ার প্রতিক্রিয়া ফিল্টার করে।

প্লেস সুইফট এসডিকে

let restriction = CircularCoordinateRegion(center: CLLocationCoordinate2DMake(37.7937, -122.3965), radius: 500)
let searchNearbyRequest = SearchNearbyRequest(
  locationRestriction: restriction,
  placeProperties: [ .name, .coordinate],
  includedTypes: [ .restaurant, .cafe ],
)
switch await placesClient.searchNearby(with: searchNearbyRequest) {
case .success(let places):
  // Handle places
case .failure(let placesError):
  // Handle error
}

সুইফট

// Array to hold the places in the response
var placeResults: [GMSPlace] = []

// Define the search area as a 500 meter diameter circle in San Francisco, CA.
let circularLocationRestriction = GMSPlaceCircularLocationOption(CLLocationCoordinate2DMake(37.7937, -122.3965), 500)

// Specify the fields to return in the GMSPlace object for each place in the response.
let placeProperties = [GMSPlaceProperty.name, GMSPlaceProperty.coordinate].map {$0.rawValue}

// Create the GMSPlaceSearchNearbyRequest, specifying the search area and GMSPlace fields to return.
var request = GMSPlaceSearchNearbyRequest(locationRestriction: circularLocationRestriction, placeProperties: placeProperties)
let includedTypes = ["restaurant", "cafe"]
request.includedTypes = includedTypes

let callback: GMSPlaceSearchNearbyResultCallback = { [weak self] results, error in
  guard let self, error == nil else {
    if let error {
      print(error.localizedDescription)
    }
    return
  }
  guard let results = results as? [GMSPlace] else {
    return
  }
  placeResults = results
}

GMSPlacesClient.shared().searchNearby(with: request, callback: callback)

অবজেক্টিভ-সি

// Array to hold the places in the response
_placeResults = [NSArray array];

// Define the search area as a 500 meter diameter circle in San Francisco, CA.
id<GMSPlaceLocationRestriction> circularLocation = GMSPlaceCircularLocationOption(CLLocationCoordinate2DMake(37.7937, -122.3965), 500);

// Create the GMSPlaceSearchNearbyRequest, specifying the search area and GMSPlace fields to return.
GMSPlaceSearchNearbyRequest *request = [[GMSPlaceSearchNearbyRequest alloc]
  initWithLocationRestriction:circularLocation
              placeProperties:@[ GMSPlacePropertyName, GMSPlacePropertyCoordinate ]];

// Set the place types to filter on.
NSArray<NSString *> *includedTypes = @[ @"restaurant", @"cafe" ];
request.includedTypes = [[NSMutableArray alloc] initWithArray:includedTypes];

[_placesClient searchNearbyWithRequest:request
  callback:^(NSArray<GMSPlace *> *_Nullable places, NSError *_Nullable error) {
    if (error != nil) {
      NSLog(@"An error occurred %@", [error localizedDescription]);
      return;
    } else {
        // Get list of places.
        _placeResults = places;
    }
  }
];

কাছাকাছি অনুসন্ধানের প্রতিক্রিয়া

কাছাকাছি অনুসন্ধান API GMSPlace অবজেক্ট আকারে মিলের একটি অ্যারে প্রদান করে, যেখানে প্রতি মিলের স্থানে একটি GMSPlace অবজেক্ট থাকে।

খোলা অবস্থা পান

GMSPlacesClient অবজেক্টে isOpenWithRequest (Swift-এ isOpenRequest এবং GooglePlacesSwift-এ isPlaceOpenRequest ) নামে একটি সদস্য ফাংশন থাকে যা কলে উল্লেখিত সময়ের উপর ভিত্তি করে স্থানটি বর্তমানে খোলা আছে কিনা তা নির্দেশ করে একটি প্রতিক্রিয়া প্রদান করে।

এই পদ্ধতিটি GMSPlaceIsOpenWithRequest ধরণের একটি একক আর্গুমেন্ট নেয় যার মধ্যে রয়েছে:

  • একটি GMSPlace অবজেক্ট , অথবা একটি স্ট্রিং যা একটি স্থান আইডি উল্লেখ করে। প্রয়োজনীয় ক্ষেত্রগুলি সহ স্থান অবজেক্ট তৈরি করার বিষয়ে আরও তথ্যের জন্য, স্থানের বিবরণ দেখুন।
  • একটি ঐচ্ছিক NSDate (Obj-C) অথবা Date (Swift) অবজেক্ট যা আপনি যে সময়টি পরীক্ষা করতে চান তা নির্দিষ্ট করে। যদি কোনও সময় নির্দিষ্ট না থাকে, তাহলে ডিফল্ট হল "now"।
  • প্রতিক্রিয়া পরিচালনা করার জন্য একটি GMSPlaceOpenStatusResponseCallback পদ্ধতি।
  • >

GMSPlaceIsOpenWithRequest পদ্ধতিতে GMSPlace অবজেক্টে নিম্নলিখিত ক্ষেত্রগুলি সেট করা প্রয়োজন:

  • GMSPlacePropertyUTCOffsetMinutes
  • GMSPlacePropertyBusinessStatus
  • GMSPlacePropertyOpeningHours
  • GMSPlacePropertyCurrentOpeningHours
  • GMSPlacePropertySecondaryOpeningHours

যদি এই ক্ষেত্রগুলি Place অবজেক্টে প্রদান করা না থাকে, অথবা আপনি যদি একটি Place ID পাস করেন, তাহলে পদ্ধতিটি GMSPlacesClient GMSFetchPlaceRequest: ব্যবহার করে সেগুলি আনয়ন করে।

isOpenWithRequest প্রতিক্রিয়া

isOpenWithRequest একটি GMSPlaceIsOpenResponse অবজেক্ট ফেরত পাঠায় যার নাম status যা নির্দেশ করে যে ব্যবসাটি খোলা আছে, বন্ধ আছে, অথবা স্ট্যাটাসটি অজানা কিনা।

ভাষা খোলা থাকলে মান বন্ধ থাকলে মান স্ট্যাটাস অজানা থাকলে মান
স্থান সুইফট true false nil
সুইফট .open .closed .unknown
অবজেক্টিভ-সি GMSPlaceOpenStatusOpen GMSPlaceOpenStatusClosed GMSPlaceOpenStatusUnknown

isOpenWithRequest এর জন্য বিলিং

উদাহরণ: একটি GMSPlaceIsOpenWithRequest অনুরোধ করুন

নিম্নলিখিত উদাহরণটি দেখায় কিভাবে একটি বিদ্যমান GMSPlace অবজেক্টের মধ্যে একটি GMSPlaceIsOpenWithRequest আরম্ভ করতে হয়।

প্লেস সুইফট এসডিকে

        let isOpenRequest = IsPlaceOpenRequest(place: place)
        switch await placesClient.isPlaceOpen(with: isOpenRequest) {
          case .success(let isOpenResponse):
            switch isOpenResponse.status {
              case true:
                // Handle open
              case false:
                // Handle closed
              case nil:
                // Handle unknown
          case .failure(let placesError):
            // Handle error
        }
        

সুইফট

    let isOpenRequest = GMSPlaceIsOpenRequest(place: place, date: nil)
      GMSPlacesClient.shared().isOpen(with: isOpenRequest) { response, error in
        if let error = error {
          // Handle Error
        }
        switch response.status {
          case .open:
            // Handle open
          case .closed:
            // Handle closed
          case .unknown:
            // Handle unknown
        }
      }
        

অবজেক্টিভ-সি

          GMSPlaceIsOpenRequest *isOpenRequest = [[GMSPlaceIsOpenRequest alloc] initWithPlace:place date:nil];

          [[GMSPlacesClient sharedClient] isOpenWithRequest:isOpenRequest callback:^(GMSPlaceIsOpenResponse response, NSError *_Nullable error) {
            if (error) {
              // Handle error
            }

            switch (response.status) {
              case GMSPlaceOpenStatusOpen:
                // Handle open
              case GMSPlaceOpenStatusClosed:
                // Handle closed
              case GMSPlaceOpenStatusUnknown:
                // Handle unknown
            }
          }];
          

প্রয়োজনীয় পরামিতি

Use the GMSPlaceSearchNearbyRequest object to specify the required parameters for the search.

  • ক্ষেত্রের তালিকা

    যখন আপনি স্থানের বিবরণের জন্য অনুরোধ করবেন, তখন আপনাকে অবশ্যই GMSPlace অবজেক্টে ফিল্ড মাস্ক হিসেবে ফেরত পাঠানোর জন্য ডেটা নির্দিষ্ট করতে হবে। ফিল্ড মাস্ক সংজ্ঞায়িত করতে, GMSPlaceProperty থেকে GMSPlaceSearchNearbyRequest অবজেক্টে মানগুলির একটি অ্যারে পাস করুন। অপ্রয়োজনীয় ডেটা অনুরোধ না করার জন্য ফিল্ড মাস্কিং একটি ভাল ডিজাইন অনুশীলন, যা অপ্রয়োজনীয় প্রক্রিয়াকরণ সময় এবং বিলিং চার্জ এড়াতে সাহায্য করে।

    নিম্নলিখিত ক্ষেত্রগুলির মধ্যে একটি বা একাধিক উল্লেখ করুন:

    • নিম্নলিখিত ক্ষেত্রগুলি Nearby Search Pro SKU ট্রিগার করে:

      GMSPlacePropertyAddressComponents
      GMSPlacePropertyBusinessStatus
      GMSPlacePropertyCoordinate
      GMSPlacePropertyFormattedAddress
      GMSPlacePropertyName
      GMSPlacePropertyIconBackgroundColor
      GMSPlacePropertyIconImageURL
      GMSPlacePropertyPhotos
      GMSPlacePropertyPlaceID
      GMSPlacePropertyPlusCode
      GMSPlacePropertyTypes
      GMSPlacePropertyUTCOffsetMinutes
      GMSPlacePropertyViewport
      GMSPlacePropertyWheelchairAccessibleEntrance

    • নিম্নলিখিত ক্ষেত্রগুলি Nearby Search Enterprise SKU ট্রিগার করে:

      GMSPlacePropertyCurrentOpeningHours
      GMSPlacePropertySecondaryOpeningHours
      GMSPlacePropertyPhoneNumber
      GMSPlacePropertyPriceLevel
      GMSPlacePropertyRating
      GMSPlacePropertyOpeningHours
      GMSPlacePropertyUserRatingsTotal
      GMSPlacePropertyWebsite

    • নিম্নলিখিত ক্ষেত্রগুলি Nearby Search Enterprise Plus SKU ট্রিগার করে:

      GMSPlacePropertyCurbsidePickup
      GMSPlacePropertyDelivery
      GMSPlacePropertyDineIn
      GMSPlacePropertyEditorialSummary
      GMSPlacePropertyReservable
      GMSPlacePropertyReviews
      GMSPlacePropertyServesBeer
      GMSPlacePropertyServesBreakfast
      GMSPlacePropertyServesBrunch
      GMSPlacePropertyServesDinner
      GMSPlacePropertyServesLunch
      GMSPlacePropertyServesVegetarianFood
      GMSPlacePropertyServesWine
      GMSPlacePropertyTakeout

    নিম্নলিখিত উদাহরণে দুটি ফিল্ড মানের একটি তালিকা প্রদান করা হয়েছে যাতে উল্লেখ করা হয় যে একটি অনুরোধ দ্বারা ফেরত পাঠানো GMSPlace অবজেক্টে name এবং placeID ক্ষেত্র রয়েছে:

    প্লেস সুইফট এসডিকে

    // Specify the place data types to return.
    let fields: [PlaceProperty] = [.placeID, .displayName]
            

    সুইফট

    // Specify the place data types to return.
    let fields: [GMSPlaceProperty] = [.placeID, .name]
            

    অবজেক্টিভ-সি

    // Specify the place data types to return.
    NSArray<GMSPlaceProperty *> *fields = @[GMSPlacePropertyPlaceID, GMSPlacePropertyName];
            
  • অবস্থানের সীমাবদ্ধতা

    একটি GMSPlaceLocationRestriction অবজেক্ট যা অনুসন্ধানের জন্য অঞ্চলটিকে একটি বৃত্ত হিসাবে সংজ্ঞায়িত করে, যা কেন্দ্রবিন্দু এবং মিটারে ব্যাসার্ধ দ্বারা সংজ্ঞায়িত করা হয়। ব্যাসার্ধটি 0.0 এবং 50000.0 এর মধ্যে হতে হবে, যার মধ্যে রয়েছে। ডিফল্ট ব্যাসার্ধ হল 0.0। আপনার অনুরোধে এটি 0.0 এর চেয়ে বেশি মানের মধ্যে সেট করতে হবে।

ঐচ্ছিক পরামিতি

অনুসন্ধানের জন্য ঐচ্ছিক প্যারামিটারগুলি নির্দিষ্ট করতে GMSPlaceSearchNearbyRequest অবজেক্ট ব্যবহার করুন।

  • অন্তর্ভুক্ত প্রকার/বহির্ভূত প্রকার, অন্তর্ভুক্ত প্রাথমিক প্রকার/বহির্ভূত প্রাথমিক প্রকার

    অনুসন্ধান ফলাফল ফিল্টার করার জন্য ব্যবহৃত প্রকারের তালিকা A থেকে প্রকারের একটি তালিকা নির্দিষ্ট করতে দেয়। প্রতিটি প্রকারের সীমাবদ্ধতা বিভাগে 50 টি পর্যন্ত প্রকার নির্দিষ্ট করা যেতে পারে।

    একটি জায়গার সাথে সম্পর্কিত Table A টাইপ থেকে শুধুমাত্র একটি মাত্র প্রাইমারি টাইপ থাকতে পারে। উদাহরণস্বরূপ, প্রাইমারি টাইপ "mexican_restaurant" অথবা "steak_house" হতে পারে। জায়গার প্রাইমারি টাইপের ফলাফল ফিল্টার করতে includedPrimaryTypes এবং excludedPrimaryTypes ব্যবহার করুন।

    একটি স্থানের সাথে সম্পর্কিত প্রকারের তালিকা থেকে একাধিক প্রকারের মানও থাকতে পারে। উদাহরণস্বরূপ, একটি রেস্তোরাঁর নিম্নলিখিত প্রকারগুলি থাকতে পারে: "seafood_restaurant" , "restaurant" , "food" , "point_of_interest" , "establishment" . একটি স্থানের সাথে সম্পর্কিত প্রকারের তালিকার ফলাফল ফিল্টার করতে includedTypes এবং excludedTypes ব্যবহার করুন।

    যখন আপনি একটি সাধারণ প্রাথমিক ধরণ নির্দিষ্ট করেন, যেমন "restaurant" বা "hotel" , তখন প্রতিক্রিয়াটিতে নির্দিষ্ট ধরণের চেয়ে আরও নির্দিষ্ট প্রাথমিক ধরণযুক্ত স্থান থাকতে পারে। উদাহরণস্বরূপ, আপনি একটি প্রাথমিক ধরণ "restaurant" অন্তর্ভুক্ত করতে নির্দিষ্ট করেন। প্রতিক্রিয়াটিতে তারপরে একটি প্রাথমিক ধরণ "restaurant" সহ স্থান থাকতে পারে, তবে প্রতিক্রিয়াটিতে আরও নির্দিষ্ট প্রাথমিক ধরণযুক্ত স্থানও থাকতে পারে, যেমন "chinese_restaurant" বা "seafood_restaurant"

    যদি কোনও অনুসন্ধান একাধিক ধরণের বিধিনিষেধের সাথে নির্দিষ্ট করা থাকে, তবে কেবলমাত্র সেই স্থানগুলিই ফেরত পাঠানো হবে যা সমস্ত বিধিনিষেধ পূরণ করে। উদাহরণস্বরূপ, যদি আপনি {"includedTypes": ["restaurant"], "excludedPrimaryTypes": ["steak_house"]} নির্দিষ্ট করেন, তাহলে ফেরত দেওয়া স্থানগুলি "restaurant" সম্পর্কিত পরিষেবা প্রদান করে কিন্তু প্রাথমিকভাবে "steak_house" হিসাবে কাজ করে না।

    অন্তর্ভুক্তপ্রকার

    সারণি A থেকে অনুসন্ধানের জন্য স্থানের প্রকারের একটি তালিকা। যদি এই প্যারামিটারটি বাদ দেওয়া হয়, তাহলে সকল ধরণের স্থান ফেরত দেওয়া হবে।

    বাদ দেওয়াপ্রকার

    অনুসন্ধান থেকে বাদ দেওয়ার জন্য সারণি A থেকে স্থানের ধরণের একটি তালিকা।

    যদি আপনি অনুরোধে includedTypes (যেমন "school" ) এবং excludedTypes (যেমন "primary_school" ) উভয়ই উল্লেখ করেন, তাহলে প্রতিক্রিয়ায় এমন স্থান অন্তর্ভুক্ত থাকবে যা "school" হিসাবে শ্রেণীবদ্ধ করা হয়েছে কিন্তু "primary_school" হিসাবে নয়। প্রতিক্রিয়াতে এমন স্থান অন্তর্ভুক্ত থাকবে যা কমপক্ষে includedTypes এর একটির সাথে মেলে এবং excludedTypes এর কোনওটির সাথে মেলে না

    যদি কোনও বিরোধপূর্ণ প্রকার থাকে, যেমন includedTypes এবং excludedTypes উভয় ক্ষেত্রেই একটি প্রকার প্রদর্শিত হয়, তাহলে একটি INVALID_REQUEST ত্রুটি ফেরত পাঠানো হয়।

    অন্তর্ভুক্তপ্রাথমিকপ্রকার

    অনুসন্ধানে অন্তর্ভুক্ত করার জন্য সারণি A থেকে প্রাথমিক স্থানের প্রকারের একটি তালিকা।

    বাদ দেওয়া হল প্রাইমারিটাইপস

    অনুসন্ধান থেকে বাদ দেওয়ার জন্য সারণি A থেকে প্রাথমিক স্থানের প্রকারের একটি তালিকা।

    যদি কোনও বিরোধপূর্ণ প্রাথমিক প্রকার থাকে, যেমন includedPrimaryTypes এবং excludedPrimaryTypes উভয় ক্ষেত্রেই একটি প্রকার প্রদর্শিত হয়, তাহলে একটি INVALID_ARGUMENT ত্রুটি ফেরত পাঠানো হয়।

  • সর্বোচ্চ ফলাফল গণনা

    সর্বোচ্চ কতগুলি স্থানের ফলাফল দেখানো হবে তা নির্দিষ্ট করে। ১ থেকে ২০ (ডিফল্ট) এর মধ্যে হতে হবে।

  • পদমর্যাদাপ্রেফারেন্স

    ব্যবহার করার জন্য র‍্যাঙ্কিংয়ের ধরণ। যদি এই প্যারামিটারটি বাদ দেওয়া হয়, তাহলে ফলাফলগুলি জনপ্রিয়তা অনুসারে র‍্যাঙ্ক করা হবে। নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:

    • .popularity (ডিফল্ট) জনপ্রিয়তার উপর ভিত্তি করে ফলাফল বাছাই করে।
    • .distance নির্দিষ্ট স্থান থেকে দূরত্ব অনুসারে ঊর্ধ্বক্রম অনুসারে সাজানো হয়।
  • অঞ্চল কোড

    প্রতিক্রিয়া ফর্ম্যাট করতে ব্যবহৃত অঞ্চল কোড, দুই-অক্ষরের CLDR কোড মান হিসাবে নির্দিষ্ট করা হয়েছে। কোনও ডিফল্ট মান নেই।

    যদি প্রতিক্রিয়ায় formattedAddress ক্ষেত্রের দেশের নাম regionCode এর সাথে মিলে যায়, তাহলে formattedAddress থেকে দেশের কোড বাদ দেওয়া হবে। এই প্যারামিটারটি adrFormatAddress এর উপর কোন প্রভাব ফেলে না, যেখানে সর্বদা দেশের নাম থাকে, অথবা shortFormattedAddress উপর কোন প্রভাব ফেলে না, যেখানে কখনও এটি অন্তর্ভুক্ত থাকে না।

    বেশিরভাগ CLDR কোড ISO 3166-1 কোডের অনুরূপ, কিছু উল্লেখযোগ্য ব্যতিক্রম ছাড়া। উদাহরণস্বরূপ, যুক্তরাজ্যের ccTLD হল "uk" (.co.uk) যেখানে এর ISO 3166-1 কোড হল "gb" (প্রযুক্তিগতভাবে "The United Kingdom of Great Britain and Northern Ireland" এর সত্তার জন্য)। প্রযোজ্য আইনের উপর ভিত্তি করে প্যারামিটারটি ফলাফলকে প্রভাবিত করতে পারে।

আপনার অ্যাপে অ্যাট্রিবিউশন দেখান

যখন আপনার অ্যাপটি GMSPlacesClient থেকে প্রাপ্ত তথ্য, যেমন ছবি এবং পর্যালোচনা প্রদর্শন করে, তখন অ্যাপটিকে অবশ্যই প্রয়োজনীয় বৈশিষ্ট্যগুলিও প্রদর্শন করতে হবে।

উদাহরণস্বরূপ, GMSPlacesClient অবজেক্টের reviews প্রপার্টিতে পাঁচটি পর্যন্ত GMSPlaceReview অবজেক্টের একটি অ্যারে থাকে। প্রতিটি GMSPlaceReview অবজেক্টে অ্যাট্রিবিউশন এবং লেখক অ্যাট্রিবিউশন থাকতে পারে। আপনি যদি আপনার অ্যাপে রিভিউটি প্রদর্শন করেন, তাহলে আপনাকে অবশ্যই যেকোনো অ্যাট্রিবিউশন বা লেখক অ্যাট্রিবিউশনও প্রদর্শন করতে হবে।

আরও তথ্যের জন্য, অ্যাট্রিবিউশন সম্পর্কিত ডকুমেন্টেশন দেখুন।