Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can it is possible to allow user for multiple selection of file in storage access framework..?

After clicking on a button i am getting the content from provider

 Intent i = new Intent(Intent.ACTION_OPEN_DOCUMENT);
        i.addCategory(Intent.CATEGORY_OPENABLE);
        i.setType("image/*");
        startActivityForResult(i, REQUESTCODE);

now i want to allow user for multiple selection is it possible.?

like image 812
SAM Avatar asked Jun 11 '15 06:06

SAM


1 Answers

Don't know if you solved your problem, but here's how I implemented a multiple selection with the Storage Access Framework

    Intent filePickerIntent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
    filePickerIntent.setType("*/*");
    filePickerIntent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
    startActivityForResult(filePickerIntent, REQUEST_CODE);

In the Activity Result method, you just need to iterate the ClipData in the Intent parameter

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
    if(requestCode == REQUEST_CODE)
    {
        if(data != null)
        {
            ClipData clipData = data.getClipData();
            for(int i = 0; i < clipData.getItemCount(); i++)
            {
                ClipData.Item path = clipData.getItemAt(i);
                Log.i("Path:",path.toString());
            }
        }
    }
}

To select multiple files in the Storage Access Framework Activity UI, just hold press any item and the multi selection will activate.

like image 127
Thomaz Freitas Barbosa Avatar answered Sep 20 '22 18:09

Thomaz Freitas Barbosa