2016-09-14 48 views
0

我想使用凌空加(https://github.com/DWorkS/VolleyPlus/blob/master/library/src/com/android/volley/request/DownloadRequest.java)下載文件。這是我的代碼:下載請求排除加上不下載文件

@Override 
public void downloadFile(String url, final String path, OnViewDocsFinished mListener) { 
    //url = "http://www.orimi.com/pdf-test.pdf" 
    //String name = "passport.pdf"; 
    //String path = Environment.DIRECTORY_DOWNLOADS+"/"+name; 
    DownloadRequest request = new DownloadRequest(url, path, 
      createSuccessListener(mListener, path), 
      createErrorListener(mListener)); 
    VolleySingleton.getRequestQueue().add(request); 
} 
private Response.Listener<String> createSuccessListener(final OnViewDocsFinished loginListener, final String path) { 
    return new Response.Listener<String>() { 
     @Override 
     public void onResponse(String response) { 
      try { 
       Log.i(TAG, response.toString()); 
       loginListener.onDownloadFinished(path); 
      } catch (Exception e) { 

      } 
     } 
    }; 
} 
private Response.ErrorListener createErrorListener(final OnViewDocsFinished loginListener) { 
    return new Response.ErrorListener() { 
     @Override 
     public void onErrorResponse(VolleyError error) { 
      Log.e(TAG, error.toString()); 

     } 
    }; 
} 

該文件沒有被下載到該位置。這裏是我的清單文件:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
package="in.yumigo.yumigovendor"> 

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.WAKE_LOCK" /> 
<uses-permission android:name="android.permission.READ_SMS" /> 
<uses-permission android:name="android.permission.VIBRATE" /> 
<uses-permission android:name="android.permission.RECEIVE_SMS" /> 
<uses-permission android:name="android.permission.GET_ACCOUNTS" /> 
<uses-permission android:name="android.permission.USE_CREDENTIALS" /> 
<uses-permission android:name="android.permission.WAKE_LOCK" /> 
<uses-permission android:name="android.permission.SEND_SMS" /> 
<uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER" /> 
<uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 

我在Android棒棒糖上運行我的應用程序。這裏的問題是什麼人?

回答

0

您試圖通過自定義字符串請求來下載文件iebyte []。如果您提出字符串請求,您將只獲得字符串響應。在你的情況下,你需要提出byte []請求。

檢查下面的鏈接如何設置自定義請求類排球。 Implementing a Custom Volley Request.

下面的這個鏈接正在提出你要做的同樣的請求。希望它可以幫助你。 Downloading files using volley.

+0

作爲一個警告,請注意,Volley將所有數據保存在內存中;對於文件下載,最好將小塊寫入存儲,而不是將所有內容都放在內存中。 – user90766