gpt4 book ai didi

ios - 无法使用类型为 'sendData' 的参数列表调用 '(NSData,toPeer:NSArray,......'

转载 作者:行者123 更新时间:2023-11-28 06:38:56 25 4
gpt4 key购买 nike

我是 MultipeerConnectivity 的新手,当我实现自定义 sendData 函数时,它显示 Cannot invoke 'sendData' with an argument list of type '( NSData,toPeer:NSArray,withMode:MCSessionSendDataMode',错误:inout NSError?)

如何解决:

func sendData(dataToSend:dataSend,toPeer: MCPeerID)->Bool{
let dataToSend = NSKeyedArchiver.archivedDataWithRootObject(dataToSend)
let peerArray = NSArray(object: toPeer)
var error:NSError?

let arr = [MCPeerID]()
//this line shows error
if !self.session!.sendData(dataToSend, toPeers: peerArray, withMode: MCSessionSendDataMode.Reliable, error: &error) {

}
}

最佳答案

if !self.session!.sendData(dataToSend, toPeers: peerArray, withMode: MCSessionSendDataMode.Reliable, error: &error) {

}

此方法在 Swift 2.x 中不返回 bool 值

这是Apple文档中的方法

func sendData(_ data: NSData,
toPeers peerIDs: [MCPeerID],
withMode mode: MCSessionSendDataMode) throws

这意味着你必须要这样吗

do {
try self.session!.sendData(dataToSend, toPeers: peerArray, withMode: MCSessionSendDataMode.Reliable)
print("success")
// do something
} catch {
print("failure")
// do something else
}

在 Swift 2 和 Xcode 7.3.1 上测试

关于ios - 无法使用类型为 'sendData' 的参数列表调用 '(NSData,toPeer:NSArray,......',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38471146/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com