169 похожих чатов

Проблема: Я новичок, решил освоить выход в интернет, начал писать

приложение про погоду в котором когда пользователь вводит город ( на английском ) данный город заноситься в ссылку и на openmapweather.com можно посмотреть погоду в этом городе, но у меня не выводит ничего, на фотографии в круге должно было вывести данные с сайта. Гуглил о проблеме но тоже ничего не нашел. Помогите пожалуйста!
Код:
private EditText user_field;
private Button main_btn;
private TextView result_info;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

user_field = findViewById(R.id.user_field);
main_btn = findViewById(R.id.main_btn);
result_info = findViewById(R.id.result_info);

main_btn.setOnClickListener(new View.OnClickListener() { // потом обязательно занеси эту функцию в конспект
@Override
public void onClick(View v) {
if (user_field.getText().toString().trim().equals("")) {

Toast.makeText(MainActivity.this, R.string.no_user_input, Toast.LENGTH_LONG).show();

} else {

String city = user_field.getText().toString();
String key = "4ea7c6f5b338f3843fa85565b3b5a10c";
String url = "https://api.openweathermap.org/data/2.5/weather?q=" + city + "&appid=" + key + "&units=metric&lang=ru"; // сайт https://openweathermap.org/current

new GetURLData().execute(url); // передали значение url в новый класс


}
}
});


}

private class GetURLData extends AsyncTask<String, String, String> implements com.android.weather.GetURLData {

protected void onPreExecute() {

super.onPreExecute();

Toast.makeText(MainActivity.this, R.string.loading, Toast.LENGTH_LONG).show();

}


@Override
protected String doInBackground(String... strings) {

HttpURLConnection connection = null;
BufferedReader reader = null;


try {
URL url = new URL(strings[0]);
connection = (HttpURLConnection) url.openConnection();
connection.connect();

InputStream stream = connection.getInputStream();
reader = new BufferedReader(new InputStreamReader(stream));

StringBuffer buffer = new StringBuffer();
String line = "";

while ((line = reader.readLine()) != null)
buffer.append(line).append("\n");
return buffer.toString();

} catch (MalformedURLException e) {
throw new RuntimeException(e);
} catch (IOException e) {
throw new RuntimeException(e);
} finally {
if (connection != null) {
connection.disconnect();
}

if (reader != null) {
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}

return null;
}



}

@Override
public void OnPostExecute(String result){
super.onPostExecute(result);


}

}
}

6 ответов

81 просмотр

https://pastebin.com/ сайт для шейринга кода

Асинк таск, ахуеть

𝔼𝕘𝕠𝕣- Автор вопроса
𝔼𝕘𝕠𝕣
что???

Ну асинк таск наверное лет 8 назад использовали, вы как к этому пришли?

𝔼𝕘𝕠𝕣- Автор вопроса
Nikita Senatorov
Ну асинк таск наверное лет 8 назад использовали, в...

Прошел через огонь, воду и медные трубы) Хорошо, тогда что вместо его можно использовать?

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
62
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Привет всем. Подскажите где можно посмотреть, какая версия электрон, поддерживает версии windows? Некий changelog. Мне бы желательно, поддержку 7,8,10... latest, как понимаю и...
Anonym Squad
21
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
а где есть mysql cloud кроме яндекс-клауд?
Oleg Nosov
13
Есть ли смысл устраиваться на 1с ? Даст это плюс в дальнейшем трудоустройстве на php? Просто у меня в городе вакансий на пхп нету. Или лучше удаленно искать. Опыта работы нету...
Azamat
13
hi im a cs student. i need some advice from people who have enough experience in Embedded Software. I need to know whether this profession is suitable for me. I have watched s...
Sahand 🏔️
8
Не ну фпц - это уже просто троллинг какой-то. Элементарный код нельзя собрать. ЧЯДНТ? program Project1; {$mode delphi} uses SysUtils, Classes, Generics.Collections; var...
Peter
4
Кстати а покупал кто-нибудь ЭЦП для подписи кода? А то у меня на некоторых компах и ОС иногда SmartScreen винды программу за вирус принимал. Если купить такую ЭЦП и подписыват...
Дмитрий Завгородний
15
А кто-нибудь запихивал сборку перловых модулей/образов с perl приложениями в окружения без интернета (в специализированном CI/CD)? У меня сейчас есть ряд cpanfile, которые н...
Andrey Smirnov / 𝓪𝓵𝓵𝓽𝓮𝓻 /
14
Карта сайта