[英]Socket.io connection issue
我正在使用Socket.io進行一對一聊天。 我以前用過,但從來沒有遇到過這種問題。 我的應用程序在顯示以下錯誤后崩潰。
我得到的錯誤
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String okhttp3.MediaType.toString()' on a null object reference
at io.socket.engineio.client.transports.PollingXHR$Request.onLoad(PollingXHR.java:271)
at io.socket.engineio.client.transports.PollingXHR$Request.access$700(PollingXHR.java:148)
at io.socket.engineio.client.transports.PollingXHR$Request$1.onResponse(PollingXHR.java:232)
at okhttp3.RealCall$AsyncCall.execute(RealCall.java:216)
at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
到目前為止我做了什么?
try {
val user_email = preferenceManager.getLoggedInUserEmail()
val ioOption = IO.Options()
ioOption.query = "username=anyemail"
ioOption.secure =true
ioOption.reconnection=true
SocketConstants.socketIOClient = IO.socket(SocketConstants.SOCKET_URL, ioOption)
SocketConstants.socketIOClient?.on(Socket.EVENT_CONNECT, object : Emitter.Listener {
override fun call(vararg args: Any) {
SocketConstants.isSocketConnecting = false
Log.i(TAG, "Socket Connected Outside login check...."+args.size)
}
})
SocketConstants.socketIOClient!!.connect()
} catch (e: Exception) {
e.printStackTrace()
}
我在崩潰套接字連接外部登錄檢查之前收到此日志....
請你幫助我好嗎?
我得到了我的問題的解決方案。我不知道這個解決方案是否適用於其他面臨同樣的問題,但這對我有用。
我所做的是
val ioOption = IO.Options()
ioOption.query = "username=$user_email"
ioOption.secure = true
ioOption.reconnection = true
ioOption.transports = arrayOf(WebSocket.NAME)
SocketConstants.socketIOClient = IO.socket(SocketConstants.SOCKET_URL, ioOption)
ioOption.transsports = arrayOf(WebSocket.NAME)
這條線解決了我的問題。 只需將 trasports 添加為“WebSocket”。
如果他們面臨同樣的問題,希望這對其他人有用。
他們發布了一個新版本 1.0.1,修復了錯誤https://github.com/socketio/engine.io-client-java/commit/6f065b7a62603730979d43cec71af0046ca4ab7c(29天前)。 如果您嘗試使用 v2.0.0,請小心,我無法接收套接字消息,因此我使用了 1.0.1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.