Android 开发如何避免网络错误

Android 开发如何处理网络异常?
有一个class是处理请求各种网络数据的,若干个activity里面都会调用该class里面的方法来请求数据
我有个想法,就是每次调用网络方法的时候,都事先检查网络是否可用。但是这样可能会影响效率
第二:网络连接超时怎么处理?有没有什么像web那样的统一入口来处理异常比如struts2的全局异常。
      有人说,在网络请求的那个类中就处理连接超时的异常,但是android都是异步的获取数据的。这样做我的activity不是都要判断异常种类(是否是连接超时,是连接超时要提示用户。因为有可能是没有数据返回而不是连接超时,所以不同情况不同提示。)

不知道大家有什么好的介意。
检查网络是否可用应该在什么地方检查???
连接超时怎么处理?
能给个代码 就太感谢了!
Android 网络 异常  java 

------解决方案--------------------
检查网络应该是在每次需要调用网络方法的时候检查一下。这样做应该没有问题。
连接超时就抛出个异常呗,捕获之后ui显示成一个error dialog。
异步可以用handler发送超时异常,如果你用AsyncTask可以捕获异常后在onCancelled里面写你的超时的逻辑。

判断超时可以用连接的当前时间在加上设定值,超过了就抛出超时异常。
------解决方案--------------------
你弹出异常的问题,我估计你的网络请求时在线程里做的吧,线程里不能直接操作UI,必须向handler发送消息,告诉UI线程,有个UI要更新,交给UI线程去处理
------解决方案--------------------
在线程中加一个looper