gpt4 book ai didi

java - 从 socket.io 从 android 发送 JSON 数据

转载 作者:太空宇宙 更新时间:2023-11-03 13:22:16 25 4
gpt4 key购买 nike

我用过https://github.com/Gottox/socket.io-java-client用于android中的套接字编程。现在我收到 JSON 响应,现在我想从我的 android 应用程序将 JSON 数据发送到这个 node.js 服务器,请帮助我。这是我的代码

buttonConnect.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// socket = null;
try {
SocketIO socket = new SocketIO(
"http://104.131.225.38:8001/");

socket.connect(new IOCallback() {

@Override
public void onMessage(JSONObject arg0,
IOAcknowledge arg1) {
try {
Log.i("Server saidwsssss:",
"sssss" + arg0.toString(2));
} catch (JSONException e) {
e.printStackTrace();
}

}

@Override
public void onMessage(String arg0, IOAcknowledge arg1) {
Log.i("Server said:", "" + arg0);

}

@Override
public void onError(SocketIOException arg0) {
Log.i("OnError", "" + arg0);

}

@Override
public void onDisconnect() {
Log.i("Connection Terminated",
"Connection Terminated");

}

@Override
public void onConnect() {
Log.i("Connection Established",
"Connection Established");

}

@Override
public void on(String arg0, IOAcknowledge arg1,
Object... arg2) {
Log.i("Server Trigger Event:", "" + arg0 + ""
+ arg1);
if (arg0.equals("nbUsers")) {
Log.i("DONE", "DONE" + arg0.toString());
}
Object[] arguments = arg2;
Log.i("Args", "" + arguments[0].toString());

}
});
socket.send("hello server");
socket.emit("event", "argument1", "argument2", 13.37);
} catch (Exception e) {
e.printStackTrace();
}
}

});
}

最佳答案

您可以使用允许将您的对象转换为 JSON 字符串的 Gson 对象,并将转换应用于 JSONObject,如下所示:

Entity en = new Entity();
Gson gson = new Gson();
try {
JSONObject obj = new JSONObject(gson.toJson(en));
socket.emit("entity", obj);
} catch (JSONException e) {
e.printStackTrace();
}

我就是这样做的。要使用 Gson,您应该添加一个 Gradle 依赖项:

 compile 'com.google.code.gson:gson:2.+'

关于java - 从 socket.io 从 android 发送 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25932613/

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