Пока я менялся с открытой погоды api на темное небо api, я нашел проблему с соединением.Почему InputStream не работает с HTTPS в Android?
Я просто хочу получить JSON-ответ от этого api и с открытой картой погоды api, все работает хорошо. Теперь я решил вместо этого использовать темное небо api. Я просто адаптировал все, как всегда, но это не сработало.
Возможно, у него есть проблема с https? (темное небо api использует https-URL, где открытая карта погоды api использует http-URL).
Во всяком случае, я поймать IOException в
inputStream = connection.getInputStream();
Вот мой класс:
import com.nymvno.hiob.prototyp_v30.Utils.Utils;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class WeatherHttpClient {
public String getWeatherData(String place) {
HttpURLConnection connection;
InputStream inputStream;
try {
connection = (HttpURLConnection) (new URL(Utils.BASE_URL + place)).openConnection();
connection.setRequestMethod("GET");
connection.setDoInput(true);
connection.setDoOutput(true);
connection.connect();
//Read the response
StringBuffer stringBuffer = new StringBuffer();
inputStream = connection.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
String line;
while ((line = bufferedReader.readLine()) != null) {
stringBuffer.append(line + "\r\n");
}
inputStream.close();
connection.disconnect();
return stringBuffer.toString();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}
что это исключение? Не могли бы вы опубликовать ошибку кота журнала? –
Не исключение. Я отлаживал его и выяснял, что он перескакивает из вызываемой строки, чтобы вернуть нуль. – nymvno
Если нет исключения, почему ваш вопрос говорит, что есть? – EJP