0

这是我的房间设置

let roomSettings = RoomSettings(name: "room \(rooms.count + 1)")
roomSettings.maxUsers = 10
smartFox.send(CreateRoomRequest(roomSettings: roomSettings, autoJoin: false, roomToLeave: nil))

加入房间请求

func joinRoom(room : Room, callback : (Result -> ())?)
{
    pendingCallbacks[TaskType.JoinRoom] = callback
    smartFox.send(JoinRoomRequest(id: room.id()))
}

创建房间后,我点击它加入,但出现奇怪的异常,我真的不知道会发生什么

21:07:18,545 ERROR [SFSWorker:Sys:4] v290.SystemReqController     - Cannot find a controller command for request ID: 3
21:07:18,546 WARN  [SFSWorker:Sys:4] v290.SystemReqController     - java.lang.NullPointerException
java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:1124)
com.smartfoxserver.v2.controllers.v290.SystemReqController.processRequest(SystemReqController.java:146)
com.smartfoxserver.v2.controllers.v290.SystemReqController.enqueueRequest(SystemReqController.java:119)
com.smartfoxserver.bitswarm.io.protocols.AbstractProtocolCodec.dispatchRequestToController(AbstractProtocolCodec.java:39)
com.smartfoxserver.v2.protocol.SFSProtocolCodec.dispatchRequest(SFSProtocolCodec.java:133)
com.smartfoxserver.v2.protocol.SFSProtocolCodec.onPacketRead(SFSProtocolCodec.java:90)
com.smartfoxserver.v2.protocol.binary.BinaryIoHandler$1.run(BinaryIoHandler.java:477)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
java.lang.Thread.run(Thread.java:745)

你能告诉我如何解决这个问题吗?

我使用 smartfox 服务器 2.10.0 和 smartfox 客户端 ObjC 1.6.0

4

1 回答 1

-1

可能是客户端 api 有问题,我不能使用房间 ID 加入和离开房间(如果我使用房间 ID,则会发生该异常)。尽管如此,smartfox 文件说这是可能的。

现在通过在 JoinRoomRequest 中将房间 id 更改为房间名称,一切正常

于 2015-08-15T14:52:00.107 回答