我正在使用jxa-1.0在黑莓中创建Instant Messaging应用程序,同时运行应用程序我遇到异常,例如“java.io.IOException:Stream closed”。你能告诉我如何解决这个问题吗?或者如果你以前有过Jxa-1.0的经验,请分享你对如何使用这个的想法。
答案 0 :(得分:1)
如果你想在模拟器上避免这个错误,你应该一次读取一个字节的InputStream,尝试这个代码(考虑在使用真实设备时不使用这种方法,因为性能会受到影响):
InputStream is = httpConnection.openInputStream();
int data = -1;
ByteArrayOutputStream bos = new ByteArrayOutputStream();
data = is.read();
bos.write(data);
while (data >= 0) {
try {
data = is.read();
} catch (Exception e) {
// Replace exception with "-1". This is to handle anomalous End-of-Stream in OS 5.
data = -1;
}
bos.write(data);
}
byte[] byteArray = bos.toByteArray();
答案 1 :(得分:0)
如果您在模拟器中看到此错误消息,请不要感到惊讶。我在模拟器中经常看到这样的I / O错误,特别是在Direct TCP或Wi-Fi连接上。一些较新的5.0模拟器似乎比较旧的模拟器更有问题。
如果您还没有,请在真实设备上试用它,它可能会更好。