我是IOS的新手,请考虑。我的问题是,每当我上传图片时,它都只是替换现有图片。
现在,我要上传具有唯一文件名的图像。我正在从相机拍摄图像。
func uploadtofirebase(){
let imagepath = UIImagePNGRepresentation(self.imagebutton.image!)
if imagepath == nil {
return
}
var strURL = "imagePickerController.png"
let storage = Storage.storage()
let storageRef = storage.reference().child("IosImages/").child(strURL)
print("calling here successfully ")
storageRef.putData(imagepath!, metadata:nil,completion:
{(metadata,error) in storageRef.downloadURL(completion: { (url, error) in
if let urlText = url?.absoluteString{
strURL = urlText
print("///////////tttttttt//////// \(strURL) ////////")
//completion(strURL)
print("passed activity")
self.startReceivingLocationChanges()
}
})
})
}
注意:.child(strURL)
我认为strURL
必须使其动态。我已经在android中完成了,但是我却无法使用iOS。
答案 0 :(得分:2)
您只需要动态创建图像名称。像这样的'20181010045120.png'。您可以使用类似这样的功能来生成它
func generateImageName() -> String {
let date = Date()
let formatter = DateFormatter()
formatter.dateFormat = "yyyyMMddHHmmSS"
let result = formatter.string(from: date)
return "\(result).png"
}
只需调用此函数,您将每次获得新的图像名称。这也很有用,因为它包含生成日期的时间。