问题
i want to download multiple files using downloadmanager class in android i have 100-200 image file but when i try to download the files app crashes but the download starts? how can i fix this,my code for downloading the files is:
public void downloadimages(String url,String filename)
{
String ur1=url,v1=filename;
downloadManager = (DownloadManager)getSystemService(DOWNLOAD_SERVICE);
Uri Download_Uri = Uri.parse(ur1);
DownloadManager.Request request = new DownloadManager.Request(Download_Uri);
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI);
request.setAllowedOverRoaming(false);
request.setDescription("Android Data download using DownloadManager.");
request.setDestinationInExternalFilesDir(getApplicationContext(),Environment.DIRECTORY_DOWNLOADS,v1 + ".jpg");
downloadManager.enqueue(request);
}
02-23 16:45:28.695: E/AndroidRuntime(22646): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.newpicker/com.example.newpicker.AnotherActivity}: java.lang.IndexOutOfBoundsException: Invalid index 136, size is 136
this is my logcat
回答1:
Can you show us the code com.example.newpicker.AnotherActivity
class, because it seems that the error comes from this class.
then the error is a IndexOutOfBoundsException
, so have you tried with less image eg 10 or 20? and run later when the first 10 are recovered?
回答2:
try adding this permission to your AndroidManifest:
<uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
来源:https://stackoverflow.com/questions/15020217/downloading-multiple-files-using-downloadmanager-class-in-android