在我的應用程序中,我必須使用標準的iOS UIImagePickerController庫將多張照片存儲並上傳到服務器。目前,我在存儲存儲UIImagePickerControllerReferenceURL的照片庫的工作:從ImagePicker(iOS)存儲和上傳多個圖像的最佳實踐
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
if let assetURL = info["UIImagePickerControllerReferenceURL"] as? URL {
assetArray.append(assetURL) //assetArray globally stored as 'fileprivate var assetArray = [URL]()'
}
}
不過,我只是讀的地方,相機不提供「UIImagePickerControllerReferenceURL」鍵。因此,這種方法可能無法正常工作,所以我現在正在重新思考我的邏輯。
我使用KingFisher,所以我目前正在研究,看看您是否可以使用該框架緩存圖像,但我不確定。我還在閱讀,我可以使用照片的API來抓取相機圖像的URL,我將在下面嘗試。如果可以,我會抓取相機拍攝的照片的網址,並將其附加到assetArray。
如果這是一個單一的照片上傳,這將是相對簡單的,但由於我不想通過存儲大型數據/圖像數組阻礙應用程序的性能,這項任務已變得複雜。
它是最好繼續我在做什麼:
1)抓取URL我要上傳每個圖像的,並把它們存儲到一個URL數組。在上傳到服務器之前,抓取每個URL的.png格式的數據,並上傳圖像到服務器
2)緩存某處的實際圖像,因此當上傳到服務器時,圖像已經存在(不需要轉換從URL - >圖像)。如果沒有正確完成,問題在於許多圖片可能會妨礙應用程序的性能。
或
3)的一些其他方法
任何幫助,將不勝感激。謝謝!