Search code examples
iosswift3estimote

Estimote beacons Demo Example Apps not working with Swift 3


Getting issues with Estimote Demo examples provided in the latest SDK. After changing to latest Swift 3 syntax it showed several errors. I fixed few but one I cant. I have attached the image below where it shows error "Type 'BeaconDetailsCloudFactory' does not conform to protocol 'BeaconContentFactory'". How can I fix the problem?

Screenshot: enter image description here


Solution

  • Change code inside the BeaconContentFactory file

    protocol BeaconContentFactory {
    
    func contentForBeaconID(_ beaconID: BeaconID, completion:@escaping (_ content: AnyObject) -> ())
    
    }
    

    What was happening is, in the protocol declaration BeaconContentFactory by the sdk providers the completion is not marked @escaping but when you are implementing the protocol your use case requires the completion to be @escaping so just change the protocol declaration to accept @escaping completion and your error should disappear.

    Hope this helps