异步加载AsyncTask

private void huodeshuju() {
        new AsyncTask<String, Void, String>() {

@Override
            protected String doInBackground(String... params) {
                try {
                    URL url=new URL(params[0]);
                    HttpURLConnection urlConnection=(HttpURLConnection) url.openConnection();
                    urlConnection.setConnectTimeout(5000);
                    urlConnection.setReadTimeout(5000);
                    urlConnection.setRequestMethod("GET");                  
                    int code=urlConnection.getResponseCode();                    
                    if (code==200) {
                        InputStream inputStream=urlConnection.getInputStream();
                        BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(inputStream));
                        String line;
                        StringBuffer buffer=new StringBuffer();
                        while ((line=bufferedReader.readLine())!=null) {
                            buffer.append(line);
                            
                        }
                        String str=buffer.toString();
                        
                       /* Message message=new Message();
                        message.what=1;
                        message.obj=str;
                      //发送Handler消息
                        handler.sendMessage(message);*/
                        
                       return str;
                    }
                    
                } catch (MalformedURLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
           
                return null;
            }
            
            
            protected void onPostExecute(String result) {
                
                tojson(result);
            };
            
            
        }.execute("http://i.dxy.cn/snsapi/home/feeds/list/all?sid=4df0360f-2a20-4198-beb8-4dc5660c4f08&u=zhetianyishou&s=10&mc=0000000049029dcaffffffff99d603a9&token=TGT-13165-buaw5fHpqLlefw9bSOB0oF41fobaV4rMZmK-50&hardName=iToolsAVM_T0008098S&ac=4124c5f1-2029-4fda-b06f-a87ac5ad8d11&bv=2013&vc=6.0.6&tid=c25e673d-e82a-4e46-bd4e-c1e86d497126&vs=4.4.4&ref_tid=54720e1a-7eed-4993-9f51-3d760f3d0b2e");
        
        
        
        
    }

时间: 2024-10-11 13:31:29

异步加载AsyncTask的相关文章

Android异步加载AsyncTask详解

最近项目发现个重大问题,结果打log跟踪查是AsyncTask导致的.如果对AsyncTask了解的不够深入透彻,那写代码就是埋雷.以后不定在哪个时间爆炸.首先我们要了解,谷歌为什么发明AsyncTask,AsyncTask到底是用来解决什么问题的?Android有一个原则---单线程模型的原则:UI操作并不是线程安全的并且这些操作必须在UI线程中执行. 在单线程模型中始终要记住两条法则: 1. 不要阻塞UI线程 2. 确保只在UI线程中访问Android UI工具包 首先来说说AsyncTas

android异步加载AsyncTask

http://blog.csdn.net/abc5382334/article/details/17097633 http://keeponmoving.iteye.com/blog/1515611 http://www.cnblogs.com/suinuaner/archive/2013/04/11/android_fifty.html http://blog.csdn.net/lanjianhun/article/details/8675299 http://blog.csdn.net/al

Android异步加载全解析之使用AsyncTask

Android异步加载全解析之使用AsyncTask 概述 既然前面提到了多线程,就不得不提到线程池,通过线程池,不仅可以对并发线程进行管理,更可以提高他们执行的效率,优化整个App.当然我们可以自己创建一个线程池,不过这样是很烦的,要创建一个高效的线程池还是挺费事的,不过,Android系统给我吗提供了AsyncTask这样一个类,来帮助我们快速实现多线程开发,它的底层实现,其实就是一个线程池. AsyncTask初探 AsyncTask,顾名思义就是用来做异步处理的.通过AsyncTask,

AsyncTask实现网络图片的异步加载

想要实现网络中图片的加载,主线程是不行的,方法有两个,一个是使用线程Tread(),另一个就是使用AsyncTask,AsyncTask其实也是线程.我看过慕课网里边一个叫做<Android必学-异步加载>的视频,部分代码: 1 //-----------------------AsyncTask异步访问图片----------------------- 2 3 public void showImageByAsyncTask(ImageView imageView,String url){

Android开发之图片处理专题(二):利用AsyncTask和回调接口实现图片的异步加载和压缩

在上一篇专题Android开发之图片处理专题(一):利用软引用构建图片高速缓存中我们讲述了如何利用软引用技术构建高速缓存.那么想要用到图片,首先得有图片的来源.一般而言,一个应用的图片资源都是从服务器处获得的.今天,我们利用Android开发之网络请求通信专题(二):基于HttpClient的文件上传下载里面封装好的httpUtils来实现图片的下载,然后加载到本地配合软引用缓存使用,以一个listView为例子来说明. 一.准备工作 我们需要准备以下几个类(图片对象和软引用缓存类请参考上一篇专

AsyncTask异步加载和HttpURLConnection网络请求数据

//获得网络数据    private void huodeshuju() { //这里是使用线程,已注释掉        /*new Thread(){            public void run() {                                try {                    URL url=new URL(urlPath);                    HttpURLConnection urlConnection=(HttpURL

Android AsyncTask异步加载WebAPI

之前做的程序一直存在很多问题,因为需要加载的Activity需要从网络加载数据.并没有完全正确的使用异步的方法去加载! 之前用的虽然是AsyncTask,但是在加载完成的时候还是并没有使用AsyncTask内置的方法去处理.而已傻傻的在OnCreate中处理.结果还是要等待AsyncTask加载完成后,等待OnCreate执行完成后,才load到Activity.这样子给人的第一感觉就是卡机了一样! 果断重新再写,这次的代码真是大换血.首先还是选择把带分页ListView进行封装了一下. 1 i

ListView的异步加载(笔记,多线程和AsyncTask)

异步加载最常用的两种方式: 多线程,线程池     AsyncTask 实例操作: 从一个网站上获取Json数据,然后将数据在ListView上显示. 1.创建item_layout布局 , 修改主界面布局 item_layout.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/re

Android批量图片加载经典系列——使用LruCache、AsyncTask缓存并异步加载图片

一.问题描述 使用LruCache.AsyncTask实现批量图片的加载并达到下列技术要求 1.从缓存中读取图片,若不在缓存中,则开启异步线程(AsyncTask)加载图片,并放入缓存中 2.及时移除无效的异步线程;保证异步加载图片时不会乱序 3.只对当前屏幕可见部分进行缓存.异步加载图片 4.优化性能杜绝OOM 二.案例介绍 案例实现照片墙效果 三.主要技术 LruCache 内存缓存技术,在Android中 专门用来做图片缓存处理的组件,主要使用步骤 (1) 设置缓存图片的内存大小,如设置为