I am building an app using WatchKit and would like to populate a Table with data from PFObjects I have in a class but I got this error:
Terminating app due to uncaught exception 'NSInvalidUnarchiveOperationException', reason: 'This decoder will only decode classes that adopt NSSecureCoding. Class 'PFObject' does not adopt it.'
Having the same problem as this post
In the watch's interface controller simply set call Parse's credentials again:
and create a new PFQuery just for the watch. It doesn't matter if communication fails or not.
Have you considered adding a Swift extension to PFObject that adopts the NSSecureCoding protocol?
I haven't tried this action but it seems reasonable to expect this to work given the error message.
Recommended Action
In order to conform to NSSecureCoding:
An object that does not override initWithCoder: can conform to NSSecureCoding without any changes (assuming that it is a subclass of another class that conforms).
An object that does override initWithCoder: must decode any enclosed objects using the decodeObjectOfClass:forKey: method. For example:
SWIFT
In addition, the class must override its supportsSecureCoding method to return true.
If using Objective-C then a category seems like a suitable solution.