I just started with android, and I'm working on a simple application that should download the contents of an html file. I am using AsyncTask as suggested, but I ran into one problem. In the following code (I followed the tutorial code), I get tv cannot be resolved for the onPostExecute method. How to access the downloaded file? Thank you:
public class FlashResults extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView tv = new TextView(this); setContentView(tv); readWebpage(tv); } protected class DownloadPage extends AsyncTask<String, Void, String> { protected String doInBackground(String... urls) { String responseStr = null; try { for (String url : urls) { DefaultHttpClient httpClient = new DefaultHttpClient(); HttpGet get = new HttpGet(url); HttpResponse httpResponse = httpClient.execute(get); HttpEntity httpEntity = httpResponse.getEntity(); responseStr = EntityUtils.toString(httpEntity); } } catch (UnsupportedEncodingException e) { } catch (ClientProtocolException e) { } catch (IOException e) { } return responseStr; } protected void onPostExecute(String result) { tv.setText(result); } } public void readWebpage(View v) { DownloadPage task = new DownloadPage(); task.execute(new String[] { "http://seznam.cz" }); }
}
source share