2012-12-27 82 views
0

嗨我開發一個帶Dropbox支持的應用程序。Dropbox API - 如果沒有互聯網連接會發生什麼

我完成身份驗證,一切工作正常。

當我關閉互聯網連接,並嘗試上傳文件時,我收到成功回撥... !!!

之後,如果我切換互聯網上沒有任何反應。

這是事情發生的方式還是我錯了?

下面是我用上傳

  FileInputStream inputStream = null; 

     try { 
      File file = new File("/path to my file.txt"); 

      inputStream = new FileInputStream(file); 


      Entry newEntry = mDBApi.putFileOverwrite("/path to my file.txt", inputStream, file.length(), null); 

      Log.i("DbExampleLog", "The uploaded file's rev is: " + newEntry.rev); 
     } catch (DropboxUnlinkedException e) { 
      // User has unlinked, ask them to link again here. 
      Log.e("DbExampleLog", "User has unlinked."); 
     } catch (DropboxException e) { 
      Log.e("DbExampleLog", "Something went wrong while uploading."); 
     } catch (FileNotFoundException e) { 
      Log.e("DbExampleLog", "File not found."); 
     } finally { 
      if (inputStream != null) { 
       try { 
        inputStream.close(); 
       } catch (IOException e) {} 
      } 
     } 
+0

也許它拋出一個異常類型,你不處理...我通常拋出一個catch(Exception e)'作爲一個全部。祝你好運。 –

回答

0
private boolean haveNetworkConnection() 
{ 
    boolean haveConnectedWifi = false; 
    boolean haveConnectedMobile = false; 

    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 
    NetworkInfo[] netInfo = cm.getAllNetworkInfo(); 
    for (NetworkInfo ni : netInfo) 
    { 
     if (ni.getTypeName().equalsIgnoreCase("WIFI")) 
      if (ni.isConnected()) 
       haveConnectedWifi = true; 
     if (ni.getTypeName().equalsIgnoreCase("MOBILE")) 
      if (ni.isConnected()) 
       haveConnectedMobile = true; 
    } 
    return haveConnectedWifi || haveConnectedMobile; 

} 

用上面的方法來檢查是否有互聯網連接是否可用的代碼。這樣就可以檢查並顯示敬酒消息,如果Internet連接可用

如果使用這種方法,那麼請不要忘記

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 

添加到您的清單文件

相關問題