所以我的应用程序的工作方式有点像instagram。用户可以上传照片,每当有人加载应用程序时,它都会下载从Firebase上传的每张照片。
我知道我需要购买空间或更改我的计划,但是我没有做那么多,我在一个小时内浪费了1.7gb的用户费用。每张照片的上传和下载费用约为17mb。
我不确定如何减少此处的下载量。
我从Firestore下载的方式就像从f中这样:
// Create a reference to the file you want to download
let islandRef = storageRef.child("images/island.jpg")
// Download in memory with a maximum allowed size of 1MB (1 * 1024 * 1024 bytes)
islandRef.getData(maxSize: 1 * 10240 * 10240) { data, error in
if let error = error {
// Uh-oh, an error occurred!
} else {
// Data for "images/island.jpg" is returned
let image = UIImage(data: data!)
}
}
每次将照片加载到collectionviewcontroller中。这意味着每张照片就像17mb一样多。有什么建议么?谢谢
答案 0 :(得分:0)
因此,您可以在此决定要上传到Firebase的照片的质量水平。我可以向您保证,instagram和任何其他社交媒体平台都只会存储图片的版本,这些版本会进行压缩并针对尺寸进行优化。
您可以通过执行以下操作轻松压缩图像
let data = imageToUpload.jpegData(compressionQuality: 0.3)
然后您将图像的新压缩版本上载到Firebase,并大大提高了存储效率。