2017-02-28 10 views
0

이것은 동영상 및 이미지 용 피커를 여는 코드입니다.하지만 길이가 5 분을 초과하는 동영상은 표시하지 않아야합니다. 이것이 가능한가?Android : 오픈 픽처 픽커 및 필터 동영상 길이 :

public void startChoosePhotoFromLibrary() { 
     if (checkOrRequestExternalStoreagePermission()) { 
      if (Build.VERSION.SDK_INT < 19) { 
       Intent photoPickerIntent = new Intent(Intent.ACTION_PICK); 
       photoPickerIntent.setType("image/* video/*"); 
       startActivityForResult(photoPickerIntent, PICK_PHOTO_ACTIVITY_REQUEST_CODE); 
      } else { 
       Intent photoPickerIntent = new Intent(Intent.ACTION_GET_CONTENT); 
       photoPickerIntent.setType("*/*"); 
       photoPickerIntent.putExtra(Intent.EXTRA_MIME_TYPES, new String[]{"image/*", "video/*"}); 
       startActivityForResult(photoPickerIntent, PICK_PHOTO_ACTIVITY_REQUEST_CODE); 
      } 
     } 
    } 

답변

1

이것은 MIME 타입을 사용하지 않는 동영상 및 이미지

ACTION_PICK

에 대한 개방 피커를 내 코드입니다. ACTION_PICK은 콘텐츠 모음에서 선택하며 컬렉션은 Intent에 입력 한 Uri으로 식별됩니다.

또한 MIME 형식에는 공백이 없습니다.

이것이 가능합니까?

Intent 조치를 거치지 않거나 Android SDK에 포함 된 콘텐츠 선택 메커니즘을 통해 지원되지 않습니다.

동영상의 경우 MediaStore을 사용해 주시면 동영상 길이를 기준으로 필터링 할 수 있습니다. 그러나 사용자가 쿼리 결과 (예 : ListView, RecyclerView) 중에서 무엇인가를 선택할 수있게하기 위해 자신 만의 UI를 제시해야합니다.

+0

감사합니다. 나는 이것이 유일한 옵션이라고 생각했습니다. –