Получение возвращенной строки из AsyncTask в Android

Я хочу получить содержимоеэтот файл и сохранить это в строку.

я пытался использовать AsyncTask (на основеэтот ответ) и вот мой класс.

class RetreiveURLTask extends AsyncTask {

    private Exception exception = null;
    public String ResultString = null;

    protected String doInBackground(Void ... something) {
        URL url;
        try {
            url = new URL("http://stream.lobant.net/ccfm.info");
            HttpURLConnection urlConnection;
            urlConnection = (HttpURLConnection) url.openConnection();
            InputStream in = new BufferedInputStream(urlConnection.getInputStream());
            String stream_url = IOUtils.toString(in, "UTF-8");
            urlConnection.disconnect();

            return stream_url;

        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            return null;
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            return null;
        } catch (Exception e) {
            this.exception = e;
            return null;
        }
    }

    protected void onPostExecute(String stream_url) {
    // TODO: check this.exception 
    // TODO: do something with the feed
    if (this.exception != null)
        this.exception.printStackTrace();

    this.ResultString = stream_url;
    }
}   

я пытался использовать мой класс AsyncTask следующим образом:

  AsyncTask stream_task = new RetreiveURLTask().execute();
  String stream_url = stream_task.ResultString;

но ResultString неЯ узнал.

Я не понимаю, как все это работает. Поскольку AsyncTask работает в фоновом режиме, даже если бы я мог назначить свою строку одной из открытых переменных, нет никакой гарантии, что она будет действительной, когда я сделаю назначение. Даже если бы я использовал какую-то функцию getResult (), мне нужно было бы знать, когда ее вызывать, чтобы код завершил выполнение.

Итак, как это обычно делается?

(Кроме того, мой http прочитал код хорошо?)

Моя способность: я могу кодировать, но я новичок в Android.

Ответы на вопрос(4)

Ваш ответ на вопрос