跳到主要内容

网络配置

网络客户端为Sign、Auth和Chat sdk提供传输层。您可以配置它一次,每个SDK将通过网络客户端的相同实例传输协议消息,只有一个打开的WebSocket连接。

设置网络客户端

安装网络客户端在使用Sign或Auth SDK之前,需要配置一个共享的网络客户端实例。设置在WalletConnect Cloud和SocketFactory实例上启动项目时生成的项目ID。

WalletConnect Swift SDK不依赖于任何websocket库。SocketFactory参数允许你传递自己的websocket连接实现。

下面是一个使用红蜘蛛v3实现WebSocketFactory的例子

import Starscream

extension WebSocket: WebSocketConnecting { }

struct SocketFactory: WebSocketFactory {
func create(with url: URL) -> WebSocketConnecting {
return WebSocket(url: url)
}
}

网络客户端配置

Networking.configure(projectId: <String>, socketFactory: SocketFactory())

Web Socket 连接

默认情况下,webSocket连接由SDK内部处理。这意味着当应用程序进入后台时,WebSocket将安全断开,当应用程序到达前台时,它将重新连接。但如果你的应用不需要它,你想手动处理Socket连接,你可以这样做:

  1. 设置socketConnectionType为manual
Networking.configure(projectId: <String>, socketFactory: SocketFactory(), socketConnectionType: .manual)
  1. 控制Socket连接:
try Networking.instance.connect()
try Networking.instance.disconnect()