Skip to content Skip to sidebar Skip to footer

How To Pick Image Or Video On Android L?

I am using below code and it works fine below android 5. I am able to pick image or video from SD card. Intent photoPickerIntent = new Intent(Intent.ACTION_PICK); photoPickerIntent

Solution 1:

hi @Mohit you can use this solution for image and video

IntentphotoPickerIntent=newIntent(Intent.ACTION_GET_CONTENT);
photoPickerIntent.setType("*/*");
getActivity().startActivityForResult(photoPickerIntent, 1);

for both image and video you can use setType(*/*);

here ACTION_GET_CONTENT is give only gallery selection while ACTION_PICK give many more options to pick image and video from different action, So as per @DipeshDhakal answer you should use only ACTION_GET_CONTENT.

and this is work on android L and api 10 also.

Solution 2:

Use Intent.ACTION_GET_CONTENT

IntentphotoPickerIntent=newIntent(Intent.ACTION_GET_CONTENT);
photoPickerIntent.setType("video/*, images/*");
startActivityForResult(photoPickerIntent, 1);

Solution 3:

Was running into a similar issue. Code that worked on 5.0 and below started breaking on 5.1+, and only filtered by the first type passed in.

A co-worker came up the following, and I thought I'd share:

We were previously using the following intent:

Intenti=newIntent(Intent.ACTION_PICK, 
    android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
i.setType("image/*,video/*");

and the following code to get the path from whatever the user selected, if anything:

publicstaticStringgetFilePathFromURI(Uri imageUri, Activity context) {
    String filePath = null;

    String[] filePathColumn = { MediaStore.Images.Media.DATA };

    Cursor cursor = context.getContentResolver().query(imageUri,
            filePathColumn, null, null, null);
    if (cursor != null) {
        try {
            cursor.moveToFirst();

            int columnIndex = cursor.getColumnIndex(filePathColumn[0]);

            filePath = cursor.getString(columnIndex);
        } finally {
            cursor.close();
        }
    }

    return filePath;
}

Now:

Intenti=newIntent(Intent.ACTION_GET_CONTENT);
i.setType("*/*");

String[] mimetypes = {"image/*", "video/*"};
i.putExtra(Intent.EXTRA_MIME_TYPES, mimetypes);

And to get the path, the getPath function found in this answer:

https://stackoverflow.com/a/20559175/434400

Post a Comment for "How To Pick Image Or Video On Android L?"