'PFObject values may not have class: NSConcreteValue'
'PFObject values may not have class: NSConcreteValue'
应用程序在此方法上不断崩溃 - 尝试简单地将 Parse 对象固定到本地数据存储,如文档 Parse docs:
中所述
func saveToBackground(title:String, description:String, coords:CLLocationCoordinate2D, image:UIImage, objectId:String, dateFound:String){
let imageData = image.jpeg(.low)
let imageFile = PFFile(name: "image.png", data: imageData!)
let foundObject = PFObject(className: "FoundObjects")
foundObject["title"] = title
foundObject["description"] = description
foundObject["coordinates"] = coords
foundObject["image"] = imageFile
foundObject["objectId"] = objectId
foundObject["dateFound"] = dateFound
foundObject.pinInBackground()
}
错误:
由于未捕获的异常 'NSInvalidArgumentException',正在终止应用程序,原因:'PFObject values may not have class: NSConcreteValue'
有什么想法吗?
您的至少一个值是 NSConcreteValue class,它不能存储在 PFObject 上。通过设置断点和单步执行找出导致问题的行,并确保将该值转换为预期的 class。或者你可以将所有这些都投射到他们的预期 class,覆盖你的基地。
编辑:正如 MartynE23 所指出的,问题实际上是 CLLocationCoordinate2D,必须将其转换为 PFGeoPoint 才能添加到 Parse Object
应用程序在此方法上不断崩溃 - 尝试简单地将 Parse 对象固定到本地数据存储,如文档 Parse docs:
中所述func saveToBackground(title:String, description:String, coords:CLLocationCoordinate2D, image:UIImage, objectId:String, dateFound:String){
let imageData = image.jpeg(.low)
let imageFile = PFFile(name: "image.png", data: imageData!)
let foundObject = PFObject(className: "FoundObjects")
foundObject["title"] = title
foundObject["description"] = description
foundObject["coordinates"] = coords
foundObject["image"] = imageFile
foundObject["objectId"] = objectId
foundObject["dateFound"] = dateFound
foundObject.pinInBackground()
}
错误:
由于未捕获的异常 'NSInvalidArgumentException',正在终止应用程序,原因:'PFObject values may not have class: NSConcreteValue'
有什么想法吗?
您的至少一个值是 NSConcreteValue class,它不能存储在 PFObject 上。通过设置断点和单步执行找出导致问题的行,并确保将该值转换为预期的 class。或者你可以将所有这些都投射到他们的预期 class,覆盖你的基地。
编辑:正如 MartynE23 所指出的,问题实际上是 CLLocationCoordinate2D,必须将其转换为 PFGeoPoint 才能添加到 Parse Object