Почему не вызывается AsyncTask
При попытке вызвать AsyncTask он не запускается
public class site extends AsyncTask {
@Override
protected Boolean doInBackground(Object... objects) {
try {
URL url = new URL("https://");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setInstanceFollowRedirects(false);
connection.setRequestMethod("GET");
connection.setRequestProperty("Content-Type", "text/plain");
connection.setRequestProperty("charset", "utf-8");
connection.connect();
Reader in = new BufferedReader(new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8));
System.out.println("Привет из doInBackground()!");
for (int c; (c = in.read()) >= 0; ) {
System.out.print((char) c);
}
} catch (Exception e) {
return false;
}
return true;
}
}
onCreate:
@Override
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);new site();
Ответы (1 шт):
Автор решения: ЮрийСПб
→ Ссылка
Ваша задача не запускается, потому что вы её не зпускаете. Запустите её так:
new site().execute();
Также вам надо иметь в виду, что классы надо с большой буквы называть. Иначе код становится сложно читаемым.
И для запросов в сеть есть либы типа OkHttp - тогда и AsyncTask не понадобится. Вот тут есть пример использования: Как отправить GET-запрос на Android?