繁体   English   中英

android.os.NetworkOnMainThreadException进入AsyncTask

[英]android.os.NetworkOnMainThreadException into AsyncTask

我有以下课程:

class CargaImgsParaAmpliar extends AsyncTask<Void, Void, Bitmap> {

        final ProgressDialog progressDialog = new ProgressDialog(imagen.this);

        protected void onPreExecute() {
            progressDialog.setTitle("");
            progressDialog.setMessage("Cargando Imagen...");
            progressDialog.show();
        }

        protected Bitmap doInBackground(Void... params) {
            Bitmap mIcon1 = null;
            URL url_value;
            try {
                url_value = new URL(StrUrl);
                mIcon1 = BitmapFactory.decodeStream(url_value.openConnection().getInputStream());
            } catch (MalformedURLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }           
            return mIcon1;
        }

        protected void onPostExecute(Bitmap imagen) {
            m_imageView.setImageBitmap(urlImageToBitmap(StrUrl));
            progressDialog.dismiss();
        }       
    }

我在AsyncTask中进行互联网放电过程,它仍然给我android.os.NetworkOnMainThreadException异常。

我该如何解决这个问题呢?

在我看来, urlImageToBitmap访问网络,但是从onPostExecute (在UI任务上运行)执行。

而你似乎没有做任何事情imagen参数onPostExecute 因此在doInBackground检索的图像基本上丢失了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM