0

我正在尝试测试我的使用 MQTT 接收消息的 android 应用程序。我收到 JSON 格式的消息,其中还包含一个 base64 编码的图像。当图像为几千字节时,这工作得非常好,但是当我尝试发送大约 400KB 的任何内容时,消息不会被发送。

我使用了两个公共经纪人两次都得到了相同的响应。(test.mosquitto.org & iot.eclipse.org)

这是正在发送的 JSON 对象:

public void send() {
JSONObject obj = new JSONObject();
try {
    obj.put("isFormat", Boolean.valueOf(true));
    obj.put("title", "this is a title");
    obj.put("image", "(insert base64 encoded image here)");
    obj.put("imageExtension", "png");
    obj.put("body", "<p>body</p>");
} catch (JSONException e) {
}

这是用于发布的代码,使用 Paho android 服务客户端:

client.publish(topic,obj.toString().getBytes(),Constants.QoS_ACK,false,null,null);
4

1 回答 1

0

我认为 MQTT 可能不适合您在 JSON 中发送图像,并且您还执行了 toString(),我怀疑这将有助于编码回图像。尝试单独发送图像,然后在接待处将其与 json 捆绑在一起。这应该工作!

于 2015-09-08T20:09:23.813 回答