WebChromeClient.FileChooserParams.parseResult(resultCode, data)


WebChromeClient.FileChooserParams.parseResult(resultCode, data)

여기서 FileChooserParams 는 정확히 어떤 역활을 하는 메소드인지 모르겠습니다 ㅠㅠ

그리고 parseResult 결과값을 받아오는거 같은데 ..

맴버변수 (resultCode, data) 이거는 어떤 값을 받아오고 어떤 것들이 들어가야 되는건지

모르겠어요 제발 쉽게 설명좀 부탁 드립니다 ㅠㅠㅠㅠ

  • 2016년 07월 25일에 작성됨
    웹/앱 개발자 초보입니다.

조회수 159


1 답변


좋아요
1
싫어요
채택취소하기

WebChromeClient.FileChooserParams 클래스는 파일 업로드와 관련된 함수입니다. 이 클래스는 안드로이드 5.0부터 사용 가능하며 파일 피커를 띄울 때 사용할 옵션(예, 파일을 하나만 선택할지 다중 선택할지 등)을 전달하거나 파일 선택이 일어난 후 후처리를 합니다.

위 클래스의 createIntent()를 사용해서 파일 피커를 띄울 경우, onActivityResult()의 결과 값을 parseResult()로 넘겨줘야 합니다. 질문의 내용인 parseReult()가 하는 역할은 onActivityResult()의 두번째, 세번째 파리미터인 int resultCode, Intent data를 입력받아서 파일 Uri를 배열로 리턴하는 처리를 합니다.

즉, 파일 피커에서 선택된 파일을 Uri로 변환한다고 이해하면 무리가 없을 것 같습니다.

안드로이드 5.0 미만에서는 FileChooserParams가 하는 처리를 개발자기 직접해야 했습니다. 5.0부터는 FileChooserParams를 사용하면 간단하게 처리가 가능합니다. 물론 FileChooserParams를 사용하지 않고 직접 처리해도 됩니다.

FileChooserParams가 동작하는 전체적인 흐름은 공식 문서를 참고하세요.

How to use:

  1. Build an intent using createIntent()
  2. Fire the intent using startActivityForResult(Intent, int).
  3. Check for ActivityNotFoundException and take a user friendly action if thrown.
  4. Listen the result using onActivityResult(int, int, Intent)
  5. Parse the result using parseResult(int, Intent) only if media capture was not requested.
  6. Send the result using filePathCallback of onShowFileChooser(WebView, ValueCallback, WebChromeClient.FileChooserParams)

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close