Protocol MCSessionDelegatechanged in iOS 11 of
- (void) session:(MCSession *)session
didFinishReceivingResourceWithName:(NSString *)resourceName
fromPeer:(MCPeerID *)peerID
atURL:(NSURL *)localURL
withError:(nullable NSError *)error;
to
- (void) session:(MCSession *)session
didFinishReceivingResourceWithName:(NSString *)resourceName
fromPeer:(MCPeerID *)peerID
atURL:(nullable NSURL *)localURL
withError:(nullable NSError *)error;
This leads to the fact that when implementing this delegate in Swift, use
func session(_ session: MCSession,
didFinishReceivingResourceWithName resourceName: String,
fromPeer peerID: MCPeerID,
at localURL: URL?,
withError error: Error?) {}
will not compile on Xcode 8; and
func session(_ session: MCSession,
didFinishReceivingResourceWithName resourceName: String,
fromPeer peerID: MCPeerID,
at localURL: URL,
withError error: Error?) {}
will not compile on Xcode 9.
In both cases, Xcode shows this error:
The parameter "session (_: didFinishReceivingResourceWithName: fromPeer: at: withError :)" has a different option than that required by the protocol "MCSessionDelegate"
How to compile in both versions?
source
share