2013-04-02 135 views
4

我的应用程序从网上下载数据并将其显示给用户。为了防止由于缺少互联网连接引起的应用程序崩溃,我已经实现了在下载开始之前检查是否有应用程序崩溃的功能。我不知道如何处理连接时下载正在处理的情况下(在AsyncTask中)。 Catch荷兰国际集团Exepctions不会在我的情况下工作:( 如果有任何意见或教程的链接,请其提前分享。 感谢如何处理互联网连接丢失?

+0

这可能有助于http://www.gadgetsaint.com/android/no-internet-connectivity-android/ – ASP

回答

0

您可以检查连接周期性下降的AsyncTask之外或在另一个线程。然后,如果连接断开,你可以通过调用cancel()来取消AsyncTask。

2

希望这会有所帮助。无论你有什么活动执行下载应该创建一个可以处理连接状态通知的BroadcastReceiver,然后你会被通知连接已经下降了,并且可以更优雅地处理它......就像等待连接回来并重新启动d的通知一样ownload:

private BroadcastReceiver mConnReceiver = new BroadcastReceiver() { 
    @Override 
    public void onReceive(Context context, Intent intent) { 
     boolean missingConnection = intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false); 
     String reason = intent.getStringExtra(ConnectivityManager.EXTRA_REASON); 

     // do whatever you need to based on current network state 
    } 

这个页面有良好的信息,以及:http://thiranjith.com/2011/03/31/how-to-monitor-network-connectivity-in-android/

+0

链接现在已经死了 –

相关问题