অবস্থানের অনুমতির অনুরোধ করতে আমরা অ্যাপলের CLLocationManager ক্লাস ব্যবহার করব। আপনি মূল অবস্থান পরিষেবাগুলি কনফিগার করতে, শুরু করতে এবং বন্ধ করতে এই শ্রেণীর উদাহরণগুলি ব্যবহার করেন৷
আপনি এখানে CLLocationManager ক্লাস সম্পর্কে আরও পড়তে পারেন।
https://developer.apple.com/documentation/corelocation/cllocationmanager
iOS অ্যাপ্লিকেশানগুলি অবস্থান অ্যাক্সেসের দুটি স্তরের একটিকে সমর্থন করতে পারে৷
৷-
অ্যাপটি ব্যবহার করার সময় - অ্যাপটি ব্যবহার করা হলে অ্যাপটি ডিভাইসের অবস্থান অ্যাক্সেস করতে পারে। এটি "যখন-ব্যবহারের অনুমোদন" নামেও পরিচিত৷
৷ -
সর্বদা − অ্যাপটি ব্যবহারে বা ব্যাকগ্রাউন্ডে থাকা অবস্থায় অ্যাপটি ডিভাইসের অবস্থান অ্যাক্সেস করতে পারে।
এখানে আমরা যখন-ইন-ইজ অনুমোদন ব্যবহার করব:আপনার অ্যাপ চালু হলেই লোকেশন পরিষেবা ব্যবহার করার জন্য অনুমোদনের অনুরোধ করুন।
https://developer.apple.com/documentation/corelocation/choosing_the_authorization_level_for_location_services/requesting_when-in-use_authorization
ধাপ 1 − Xcode খুলুন, একক দৃশ্য অ্যাপ্লিকেশন, নাম দিন LocationServices৷
৷ধাপ 2 - Main.storyboard খুলুন এবং একটি বোতাম যোগ করুন এবং এটির নাম getLocation দিন৷
৷
ধাপ 3 − ViewController.swift এ বোতামের @IBAction যোগ করুন
@IBAction func btnGetLocation(_ sender: Any) { }
পদক্ষেপ 4৷ - অবস্থান ক্লাস ব্যবহার করতে কোরিলোকেশন আমদানি করুন। CoreLocation আমদানি করুন
ধাপ 5 − আপনার info.plist খুলুন (অ্যাপ্লিকেশানটি চলাকালীন অবস্থান আপডেটের অনুমতি সক্ষম করতে একটি বিশেষ কী প্রয়োজন)। ডান-ক্লিক করুন এবং সারি যোগ করুন নির্বাচন করুন। নিম্নলিখিত মানগুলি লিখুন৷
৷
ধাপ 6 ViewController.swift খুলুন এবং CLLocationManager-এর অবজেক্ট তৈরি করুন,
let locationManager = CLLocationManager()
পদক্ষেপ 7 − ViewController.swift-এ বোতাম অ্যাকশনে নিম্নলিখিত কোড যোগ করুন,
@IBAction func btnGetLocation(_ sender: Any) { let locStatus = CLLocationManager.authorizationStatus() switch locStatus { case .notDetermined: locationManager.requestWhenInUseAuthorization() return case .denied, .restricted: let alert = UIAlertController(title: "Location Services are disabled", message: "Please enable Location Services in your Settings", preferredStyle: .alert) let okAction = UIAlertAction(title: "OK", style: .default, handler: nil) alert.addAction(okAction) present(alert, animated: true, completion: nil) return case .authorizedAlways, .authorizedWhenInUse: break } }
অনুমোদনের অবস্থা locStatus-এ বর্তমান অনুমোদনের স্থিতি ফেরত দেয়। যখন অ্যাপটি ফোরগ্রাউন্ডে থাকে তখন ব্যবহার করার অনুমোদন লোকেশন আপডেট পায়। অবস্থান পরিষেবাগুলি অক্ষম করা হলে, ব্যবহারকারীকে অবস্থান পরিষেবাগুলি নিষ্ক্রিয় করা হয়েছে বার্তা সহ একটি সতর্কতা দেখানো হবে৷
আসুন অ্যাপ্লিকেশনটি চালাই,