সুইফটে একটি ইউআরএল থেকে একটি ভিডিও ডাউনলোড করতে আমাদের কয়েকটি বিষয় মাথায় রেখে কয়েকটি ধাপ সম্পাদন করতে হবে৷
এখানে উল্লেখ্য বিষয়গুলি হল,
-
আমরা ভিডিও ডাউনলোড করার জন্য ইন্টারনেট ব্যবহার করব, তাই আমাদের Info.plist এ অ্যাপ পরিবহন নিরাপত্তার জন্য অনুমতি দিতে হবে
-
আমাদের ডাউনলোড করা ভিডিও ফটো অ্যাপে সেভ করতে হবে, তাই ফটোর অনুমতি প্রয়োজন।
-
ভিডিও সর্বদা ব্যাকগ্রাউন্ডে ডাউনলোড করা উচিত কারণ এটি ফোরগ্রাউন্ডে ডাউনলোড করলে অ্যাপটি ব্যবহার করা থেকে বিরত থাকতে পারে।
এখন, আমরা আমাদের ডিভাইসে একটি এলোমেলো লিঙ্ক থেকে একটি ভিডিও সংরক্ষণ করতে নীচের কোডটি ব্যবহার করব। অ্যাপটি চালানোর সময় আপনাকে ফটোর অনুমতি দিতে হবে।
এখন প্রথমে আপনার info.plist ফাইলে নিম্নলিখিত কোড যোগ করুন।
<key>NSPhotoLibraryUsageDescription</key> <string>saves</string> <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>
এর পরে, এখন নীচে দেখানো ফাংশনটি যোগ করুন এবং এটিকে আপনার ক্লাসের ভিউডিডলোড পদ্ধতিতে কল করুন।
এখন আপনার ভিউডিডলোড দেখতে হবে −
৷override func viewDidLoad() { super.viewDidLoad() self.downloadVideo() }
নিচে একটি ভিডিও ডাউনলোড করার ফাংশনের কোড রয়েছে৷
৷func downloadVideo() { let sampleURL = "https://commondatastorage.googleapis.com/gtv-videosbucket/sample/ElephantsDream.mp4"DispatchQueue.global(qos: .background).async { if let url = URL(string: sampleURL), let urlData = NSData(contentsOf: url) { let galleryPath = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0]; let filePath="\(galleryPath)/nameX.mp4" DispatchQueue.main.async { urlData.write(toFile: filePath, atomically: true) PHPhotoLibrary.shared().performChanges({ PHAssetChangeRequest.creationRequestForAssetFromVideo(atFileURL: URL(fileURLWithPath: filePath)) }) { success, error in if success { print("Succesfully Saved") } else { print(error?.localizedDescription) } } } } } }
স্ক্রিনে অন্য কোন UI উপাদান না থাকায় স্ক্রীনে কোন ফলাফল দেখার আশা করবেন না, শুধুমাত্র প্রিন্ট স্টেটমেন্ট আউটপুটে দেখানো হবে এবং সফলভাবে সম্পন্ন হলে, ভিডিওটি ফটোতে সেভ করা হবে যা ফটো অ্যাপে দেখা যাবে। .