`

主线程执行网络操作的时候就会抛出这个异常

 
阅读更多

当一个应用程序试图在它的主线程执行网络操作的时候就会抛出这个异常!

错误是
android.os.NetworkOnMainThreadException

 

所以放在线程中运行就可以了!不要在UI中运行!

class RetreiveFeedTask extends AsyncTask<String, Void, RSSFeed> {
  
    private Exception exception;
  
    protected RSSFeed doInBackground(String... urls) {
        try {
            URL url= new URL(urls[0]);
            SAXParserFactory factory =SAXParserFactory.newInstance();
            SAXParser parser=factory.newSAXParser();
            XMLReader xmlreader=parser.getXMLReader();
            RssHandler theRSSHandler=new RssHandler();
            xmlreader.setContentHandler(theRSSHandler);
            InputSource is=new InputSource(url.openStream());
            xmlreader.parse(is);
            return theRSSHandler.getFeed();
        } catch (Exception e) {
            this.exception = e;
            return null;
        }
    }
  
    protected void onPostExecute(RSSFeed feed) {
    }
 }
  
 new RetreiveFeedTask().execute(urlToRssFeed);

 

分享到:
评论

相关推荐

    Android代码-Cockroach

    就会导致Activity什么都不显示,但这并不是ANR,是由于Activity生命周期没有执行完整导致,issues中很多人认为这是ANR,进而导致微博上有人说这个库捕获到异常后会导致ANR,其实这个时候主线程并没有被阻塞,也就不...

    详解python中自定义超时异常的几种方法

    针对超时异常,查询了python 相关文档,没有并发现完善的包来根据用户自定义的时间来抛出超时异常的模块。所以自己干脆自己来实现一个自定义的超时异常。目前找到了两种方式来实现超时异常的功能(signal.alarm()、...

    多线程机制

    多线程机制 1 1、 Runnable接口与Thread类 1 2、 两个创建线程方法的比较 3 ...8、 线程运行中抛出异常的处理 19 9、 Callable 有返回值的线程 20 10、 Callable结合FutureTask的多线程使用(免打扰模式) 24

    andriod精华学习教程

    3、Android本身的api并未声明会抛出异常,则其在运行时有无可能抛出runtime 异常,你遇到过吗?诺有的话会导致什么问题?如何解决? 4、简要解释一下activity、 intent 、intent filter、service、Broadcast、 ...

    javabiginteger源码-android_multithreading:关于android/java多线程的文档

    Android为了保证系统对用户保持高响应性,更是强制规定了在Activity的主线程中的操作不能超过5秒,Service的主线程中的操作不能超过10秒,否则会抛出ANR异常。这使得我们必须要将耗时操作转移到工作线程中去。 Tip: ...

    详解Android UI更新的几种方法

    如果是在WT进行UI的更新,则会抛出异常,android.view.ViewRoot$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.(只有创建这个View的原

    java面试宝典2012版.pdf

    在try块中可以抛出异常吗? 二. Jav线程部分 46、java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用? 47、sleep() 和 wait() 有什么区别? 48、同步和异步有何...

    最新Java面试宝典pdf版

    在try块中可以抛出异常吗? 29 46、java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用? 29 47、sleep() 和 wait() 有什么区别? 30 48、同步和异步有何异同,在...

    Java面试笔试资料大全

    在try块中可以抛出异常吗? 29 46、java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用? 29 47、sleep() 和 wait() 有什么区别? 30 48、同步和异步有何异同,在...

    Java面试宝典2010版

    在try块中可以抛出异常吗? 46、java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用? 47、sleep() 和 wait() 有什么区别? 48、同步和异步有何异同,在什么情况...

    Java面试宝典-经典

    在try块中可以抛出异常吗? 29 46、java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用? 29 47、sleep() 和 wait() 有什么区别? 30 48、同步和异步有何异同,在...

    JAVA面试宝典2010

    在try块中可以抛出异常吗? 29 46、java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用? 29 47、sleep() 和 wait() 有什么区别? 30 48、同步和异步有何异同,在...

    java面试题大全(2012版)

    在try块中可以抛出异常吗? 29 46、java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用? 29 47、sleep() 和 wait() 有什么区别? 30 48、同步和异步有何异同,在...

    java面试宝典2012

    在try块中可以抛出异常吗? 32 46、java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用? 32 47、sleep() 和 wait() 有什么区别? 33 48、同步和异步有何异同,在...

    Java面试宝典2012版

    在try块中可以抛出异常吗? 29 二. Jav线程部分 7 46、java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用? 29 47、sleep() 和 wait() 有什么区别? 30 48、...

    Java面试宝典2012新版

    在try块中可以抛出异常吗? 29 二. Jav线程部分 7 46、java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用? 29 47、sleep() 和 wait() 有什么区别? 30 48、同步和...

Global site tag (gtag.js) - Google Analytics