यूआरएल से वीडियो को तेजी से डाउनलोड करने के लिए हमें कुछ बातों को ध्यान में रखते हुए कुछ कदम उठाने होंगे।
यहाँ ध्यान देने योग्य बातें हैं,
-
हम वीडियो डाउनलोड करने के लिए इंटरनेट का उपयोग कर रहे हैं, इसलिए हमें अपनी Info.plist
में ऐप ट्रांसपोर्ट सुरक्षा के लिए अनुमति देने की आवश्यकता है। -
हमें डाउनलोड किए गए वीडियो को फ़ोटो ऐप में सहेजना होगा, इसलिए फ़ोटो अनुमति की आवश्यकता है।
-
वीडियो को हमेशा बैकग्राउंड में डाउनलोड किया जाना चाहिए क्योंकि अगर इसे अग्रभूमि में डाउनलोड किया जाता है तो यह हमें ऐप का उपयोग करने से रोक सकता है।
अब, हम अपने डिवाइस में एक यादृच्छिक लिंक से वीडियो को सहेजने के लिए नीचे दिए गए कोड का उपयोग करेंगे। ऐप चलाते समय आपको फ़ोटो की अनुमति देनी होगी।
अब सबसे पहले निम्नलिखित कोड को अपनी info.plist फ़ाइल में जोड़ें।
<key>NSPhotoLibraryUsageDescription</key> <string>saves</string> <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>
इसके बाद अब नीचे दिखाए गए फंक्शन को ऐड करें और अपनी क्लास के viewDidLoad मेथड के अंदर कॉल करें।
अब आपका viewDidLoad ऐसा दिखना चाहिए -
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 तत्व नहीं है, स्क्रीन पर किसी भी परिणाम को देखने की उम्मीद न करें, केवल प्रिंट स्टेटमेंट आउटपुट में दिखाए जाएंगे और यदि सफलतापूर्वक किया जाता है, तो वीडियो उन तस्वीरों में सहेजा जाएगा जिन्हें फोटो ऐप में देखा जा सकता है। ।