1 Reply
      Latest reply on Jul 19, 2019 2:04 AM by Tunde
      ShinehahGnolaum Level 1 Level 1 (0 points)

        I am using Swift for an iOS app.


        I need to store a DateComponents object as a field in CloudKit.


        How would I do that?


        So far I think I need to set the CloudKit field to type Bytes, and convert the DateComponents object to a Data object. Looking at the documentation for the Data class, I can't figure out how to initialize the Data object. I have no idea how to use the UnsafeBufferPointer<SourceType> used in one of the initializers.


        The following code gives a runtime error:


        newRecord.setObject((dateComponents as! __CKRecordObjCValue), forKey: DatabaseNameStrings.fieldTime)


        Here's the runtime error message in the debug window:


        Could not cast value of type 'NSDateComponents' (0x1d04208c8) to '__C.CKRecordValue' (0x1d0420ab0).