gpt4 book ai didi

java - 如何删除java.io.IOException : Stream closed?

转载 作者:行者123 更新时间:2023-12-02 09:17:03 24 4
gpt4 key购买 nike

我尝试通过 API 发送短信,但显示错误java.io.IOException:流已关闭这是我正在使用的代码:

package com.pyprestaurants;

import android.os.StrictMode;
import android.util.Log;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;

public class SendMessage extends Thread {
String message;
String number;

SendMessage(String message, String number){
this.message = message;
this.number = number;
}

@Override
public void run() {
try {
// Construct data
String apiKey = "apikey=" + "nZ0ZOkGeO3U-lkmMqZZuUgKmjjrpCf6v3WMoBV3jWG";
String message = "&message=" + this.message;
String sender = "&sender=" + "PYPRES";
String numbers = "&numbers=" + this.number;

// Send data
HttpURLConnection conn = (HttpURLConnection) new
URL("https://api.textlocal.in/send/?").openConnection();
String data = apiKey + numbers + message + sender;
conn.setDoOutput(true);
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Length", Integer.toString(data.length()));
conn.getOutputStream().write(data.getBytes(StandardCharsets.UTF_8));

final BufferedReader rd = new BufferedReader(new
InputStreamReader(conn.getInputStream()));
rd.close();
String line;
String msg="";
while ((line = rd.readLine()) != null) {
msg = msg+line;
Log.d("TAG","the message is "+line);
}
} catch (Exception e) {
Log.d("TAG- Error msg ",e+"");
}
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}
}

我想通过各种 Activity 发送短信。因此我创建了一个使用线程的单独类。每当我想发送消息时,我都会调用 SendMessage 类的函数(其代码在上面给出)。现在的问题是在某些 Activity 中它正在发送消息,但在某些情况下它显示错误:

java.io.IOException: Stream closed

我非常困惑,为什么相同的代码可以运行一次,而另一次却显示错误。如果有人知道错误是什么,请告诉我。

最佳答案

我认为问题是您在 rd.close(); 之后调用 rd.readLine())。尝试将 rd.close() 方法向后移动,以便在关闭它之前完成对 rd 的所有调用。

关于java - 如何删除java.io.IOException : Stream closed?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58912129/

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