如何从Node.js服务器到Android客户端接收socket.io消息

时间:2018-06-22 13:44:28

标签: android socket.io kotlin

我有一个应用程序,在服务器端我们为其配置了一个socket.IO。 并且我想将我的应用程序连接到该服务器,并在事件发生时侦听服务器,然后我的应用程序在android端记录一条消息。

我有一个BaseActivity,这是我所有活动的延伸。并在BaseActivity中设置Socket.IO:

    protected var mSocket: Socket? = null       

    try {
         mSocket = IO.socket("http://myDomain.co")
    } catch (e: URISyntaxException) {
    }

    mSocket!!.connect()

然后在目标活动中,我使用以下代码:

mSocket!!.on("record_create", { args ->
    this@MainPage.runOnUiThread({
        val data = args[0] as JSONObject
        Log.i("LOGGG", data.getString("record_create").toString())
    })
})

但什么都没发生!

我怎么了?

我怎样才能最好地完成这项工作?

1 个答案:

答案 0 :(得分:0)

我自己解决了这个问题:

通过在目标活动中初始化socket.io,并在此类中调用socket.io侦听器