AsyncTask异步任务 我们都知道不能再android主线程中进行耗时操作和进行网络请求 Asynctask是执行网络请求异步线程框架,它的底层依然是用Thread+handler来实现的。 使用 //第一个string代表传入参数的类型; // 第二个integer代表进度值类型; // 第三个inputstream代表耗时操作的返回值类型
使用AsyncTask异步任务,类要继承AsyncTask并要重写doInBackground
class MyTask extends AsyncTask<String,Integer,InputStream> { //访问网络前的准备工作 @Override protected void onPreExecute() { super.onPreExecute(); } //耗时操作 @Override protected InputStream doInBackground(String... strings) { return strings[0]; } ///更新ui操作 @Override protected void onPostExecute(InputStream s) { super.onPostExecute(s); } ///更新进度 @Override protected void onProgressUpdate(Integer... values) { super.onProgressUpdate(values); } }实例化类 调用execute()方法执行