AysncTask для загрузки веб-контента в Android - PullRequest
0 голосов
/ 14 июля 2020

Я пытаюсь получить код html веб-страницы с помощью AsyncTask <> в Android, код работает, и я могу получить контент, но мне нужно долго ждать приложения для загрузки, до тех пор пока отображается только экран. Это код для AsyncTask <>:

public class DownloadTask extends AsyncTask<String, Void, String> {

int info;
String result;
@Override
protected String doInBackground(String... strings) {
    try {
        URL url = new URL(strings[0]);
        HttpsURLConnection httpURLConnection = (HttpsURLConnection) url.openConnection();
        InputStream inputStream = httpURLConnection.getInputStream();
        InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
        while(info != -1) {
            char i = (char) info;
            result += i;
            info = inputStreamReader.read();
        }
        return result;
    } catch (Exception e) {
        e.printStackTrace();
        return "Fail";
    }
}
}

Это код в MainActivity:

public class MainActivity extends AppCompatActivity {

String result;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    try {
        DownloadTask downloadTask = new DownloadTask();
        result = downloadTask.execute("https://www.listchallenges.com/fifty-favorite-fried-foods").get();
    } catch (Exception e) {
        e.printStackTrace();
    }
    Log.i("Done", result);
}
}

Как я могу заставить приложение загружаться сразу после его открытия и регистрировать значение результата?

...