iOS-এর জন্য Places SDK ব্যবহার করে, আপনি ডিভাইসটি বর্তমানে যেখানে অবস্থিত সেটি আবিষ্কার করতে পারেন। অর্থাৎ, ডিভাইসের বর্তমানে রিপোর্ট করা অবস্থানের স্থান। স্থানের উদাহরণগুলির মধ্যে রয়েছে স্থানীয় ব্যবসা, আগ্রহের স্থান এবং ভৌগলিক অবস্থান।
অবস্থান অনুমোদনের জন্য অনুরোধ করা হচ্ছে
যদি আপনার অ্যাপ ব্যবহার করে GMSPlacesClient findPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
, আপনার অ্যাপকে অবশ্যই অবস্থান পরিষেবাগুলি ব্যবহার করার অনুমতির অনুরোধ করতে হবে। আপনার Info.plist
ফাইলে NSLocationWhenInUseUsageDescription
কী যোগ করুন, আপনার কেন লোকেশন পরিষেবার প্রয়োজন তা ব্যবহারকারীকে জানানো স্ট্রিংটি সংজ্ঞায়িত করতে। যেমন:
<key>NSLocationWhenInUseUsageDescription</key> <string>Show your location on the map</string>
আপনি যদি findPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
যখন অ্যাপটি ব্যাকগ্রাউন্ডে থাকে, একটি নিশ্চিতকরণ ডায়ালগ ট্রিগার না করে, কল করার আগে নিম্নলিখিত পদক্ষেপগুলি নিন:
- আপনার
Info.plist
ফাইলেNSLocationAlwaysUsageDescription
কী যোগ করুন। - পদ্ধতিতে কল করার আগে
CLLocationManager
এর যে কোনো উদাহরণে কলrequestAlwaysAuthorization
.
নিম্নলিখিত হিসাবে CLLocationManager
থেকে অনুমোদনের অনুরোধ করুন:
সুইফট
locationManager.requestAlwaysAuthorization()
উদ্দেশ্য-C
[self.locationManager requestAlwaysAuthorization];
বর্তমান অবস্থান পাওয়া যাচ্ছে
ডিভাইসটি বর্তমানে অবস্থিত স্থানীয় ব্যবসা বা অন্য স্থান খুঁজে পেতে, GMSPlacesClient findPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
কল করুন। নিম্নলিখিত পরামিতি অন্তর্ভুক্ত করুন:
- এক বা একাধিক
GMSPlaceField
s, কোন ডেটা প্রকারগুলি ফেরত দিতে হবে তা নির্দিষ্ট করে৷ আপনি যদি এই প্যারামিটারটি বাদ দেন তবে সম্ভাব্য সমস্ত ক্ষেত্র ফেরত দেওয়া হবে এবং সেই অনুযায়ী আপনাকে বিল করা হবে। এটি শুধুমাত্র স্থানের বিবরণের অনুরোধের ক্ষেত্রে প্রযোজ্য। - ফলাফল পরিচালনা করার জন্য একটি কলব্যাক পদ্ধতি।
ক্ষেত্রগুলি স্থান অনুসন্ধান ফলাফলের সাথে মিলে যায়, এবং তিনটি বিলিং বিভাগে বিভক্ত: মৌলিক, যোগাযোগ এবং বায়ুমণ্ডল৷ বেসিক ফিল্ড বেস রেটে বিল করা হয়, এবং কোন অতিরিক্ত চার্জ লাগে না। যোগাযোগ এবং বায়ুমণ্ডল ক্ষেত্র একটি উচ্চ হারে বিল করা হয়. স্থান ডেটার অনুরোধগুলি কীভাবে বিল করা হয় সে সম্পর্কে আরও তথ্যের জন্য, ব্যবহার এবং বিলিং দেখুন।
এপিআই নির্দিষ্ট কলব্যাক পদ্ধতি চালু করে, GMSPlaceLikelihood
বস্তুর একটি অ্যারে ফিরিয়ে দেয়।
প্রতিটি GMSPlaceLikelihood
বস্তু একটি স্থান প্রতিনিধিত্ব করে। প্রতিটি স্থানের জন্য, ফলাফলে সেই স্থানটি সঠিক হওয়ার সম্ভাবনার একটি ইঙ্গিত অন্তর্ভুক্ত থাকে। একটি উচ্চ মান মানে হল একটি বৃহত্তর সম্ভাবনা যে জায়গাটি সেরা ম্যাচ। ডিভাইসের অবস্থানের সাথে সম্পর্কিত কোনো পরিচিত স্থান না থাকলে বাফারটি খালি হতে পারে।
নিম্নলিখিত কোড নমুনাটি সেই জায়গাগুলির তালিকা পুনরুদ্ধার করে যেখানে ডিভাইসটি অবস্থিত হওয়ার সম্ভাবনা সবচেয়ে বেশি, এবং প্রতিটি স্থানের নাম এবং সম্ভাবনা লগ করে।
সুইফট
// Specify the place data types to return. let fields: GMSPlaceField = GMSPlaceField(rawValue: UInt(GMSPlaceField.name.rawValue) | UInt(GMSPlaceField.placeID.rawValue))! placesClient?.findPlaceLikelihoodsFromCurrentLocation(withPlaceFields: fields, callback: { (placeLikelihoodList: Array<GMSPlaceLikelihood>?, error: Error?) in if let error = error { print("An error occurred: \(error.localizedDescription)") return } if let placeLikelihoodList = placeLikelihoodList { for likelihood in placeLikelihoodList { let place = likelihood.place print("Current Place name \(String(describing: place.name)) at likelihood \(likelihood.likelihood)") print("Current PlaceID \(String(describing: place.placeID))") } } })
উদ্দেশ্য-C
// Specify the place data types to return. GMSPlaceField fields = (GMSPlaceFieldName | GMSPlaceFieldPlaceID); [_placesClient findPlaceLikelihoodsFromCurrentLocationWithPlaceFields:fields callback:^(NSArray<GMSPlaceLikelihood *> * _Nullable likelihoods, NSError * _Nullable error) { if (error != nil) { NSLog(@"An error occurred %@", [error localizedDescription]); return; } if (likelihoods != nil) { for (GMSPlaceLikelihood *likelihood in likelihoods) { GMSPlace *place = likelihood.place; NSLog(@"Current place name: %@", place.name); NSLog(@"Place ID: %@", place.placeID); } } }];
সম্ভাবনার মান সম্পর্কে নোট:
- সম্ভাবনা একটি একক অনুরোধের জন্য ফেরত স্থানগুলির তালিকার মধ্যে স্থানটি সেরা মিল হওয়ার একটি আপেক্ষিক সম্ভাবনা প্রদান করে। আপনি বিভিন্ন অনুরোধ জুড়ে সম্ভাবনার তুলনা করতে পারবেন না।
- সম্ভাবনার মান 0 এবং 1.0 এর মধ্যে হবে৷
-
GMSPlaceLikelihood
বস্তুর একটি ফেরত অ্যারেতে সম্ভাবনার যোগফল সর্বদা 1.0 এর থেকে কম বা সমান। মনে রাখবেন যে যোগফল অগত্যা 1.0 নয়।
উদাহরণস্বরূপ, 55% সম্ভাবনার প্রতিনিধিত্ব করতে যে সঠিক স্থানটি হল স্থান A, এবং একটি 35% সম্ভাবনা যে এটি স্থান B, সম্ভাব্যতার বিন্যাসে দুটি সদস্য রয়েছে: স্থান A যার সম্ভাবনা 0.55 এবং স্থান B এর সম্ভাবনা 0.35।
আপনার অ্যাপে বৈশিষ্ট্য প্রদর্শন করা হচ্ছে
যখন আপনার অ্যাপ GMSPlacesClient findPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
থেকে প্রাপ্ত তথ্য প্রদর্শন করে, তখন অ্যাপটিকে অবশ্যই অ্যাট্রিবিউশনও প্রদর্শন করতে হবে। অ্যাট্রিবিউশন সম্পর্কে আরও পড়ুন।