swift 'FIRInvalidArgumentException',原因:'不支持的类型:NSURL(在字段 AccountTypeImageURL 中找到)'
Posted
技术标签:
【中文标题】swift \'FIRInvalidArgumentException\',原因:\'不支持的类型:NSURL(在字段 AccountTypeImageURL 中找到)\'【英文标题】:swift 'FIRInvalidArgumentException', reason: 'Unsupported type: NSURL (found in field AccountTypeImageURL)'swift 'FIRInvalidArgumentException',原因:'不支持的类型:NSURL(在字段 AccountTypeImageURL 中找到)' 【发布时间】:2018-11-10 11:55:13 【问题描述】:当我从手机上传图片时,应用程序崩溃并出现错误
'FIRInvalidArgumentException',原因:'不支持的类型:NSURL(找到 在字段中 AccountTypeImageURL)'
这是我的包含相关代码的函数
func submitButtonADD()
let imageName = NSUUID().uuidString
let storageRef = Storage.storage().reference().child("Account Type Images").child("\(imageName)png")
let sRef = Storage.storage().reference().child("Account Type Images").child("\(imageName)png")
guard let uid = Auth.auth().currentUser?.uid else return
if let uploadData = UIImagePNGRepresentation(self.profileImageView.image!)
storageRef.putData(uploadData, metadata: nil, completion: (metadata, error) in
if let error = error
print(error)
return
sRef.downloadURL url2, error in
if let error = error
print(error)
else
// Get the download URL for 'images/stars.jpg'
let db = Firestore.firestore()
db.collection("Users").document(uid).setData(["AccountTypeImageURL": url2],merge: true)
)
【问题讨论】:
【参考方案1】:该错误准确地告诉您您尝试将NSURL
类型保存在不支持的Firestore
文档中到底出了什么问题。因此,将 url 转换为字符串,然后将其保存在 Firestore 中,如下所示:
db.collection("Users").document(uid).setData(["AccountTypeImageURL": url2.absoluteString],merge: true)
【讨论】:
以上是关于swift 'FIRInvalidArgumentException',原因:'不支持的类型:NSURL(在字段 AccountTypeImageURL 中找到)'的主要内容,如果未能解决你的问题,请参考以下文章