투케이2K

238. (AndroidStudio/android/java) 안드로이드 웹뷰 파일 및 이미지 선택 타입 확인 실시 - onShowFileChooser 본문

Android

238. (AndroidStudio/android/java) 안드로이드 웹뷰 파일 및 이미지 선택 타입 확인 실시 - onShowFileChooser

투케이2K 2021. 12. 21. 19:24
반응형

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : java

 

[소스 코드]

    main_webview.setWebChromeClient(new WebChromeClient() {
        @Override
        public boolean onShowFileChooser(WebView webView, ValueCallback filePathCallback, WebChromeClient.FileChooserParams
        fileChooserParams) {
            Log.i("---","---");
            Log.w("//===========//","================================================");
            Log.i("","\n"+"[A_Main >> onShowFileChooser() :: 웹 브라우저 갤러리 호출 수행 실시]");
            Log.i("","\n"+"[url :: "+String.valueOf(main_webview.getUrl())+"]");
            Log.i("","\n"+"[filePathCallback :: "+String.valueOf(filePathCallback.toString())+"]");
            Log.i("","\n"+"[fileChooserParams :: "+Arrays.toString(fileChooserParams.getAcceptTypes())+"]");
            Log.w("//===========//","================================================");
            Log.i("---","---");
            // ----------------------------------
            // [SEARCH FAST] : [파일 업로드]
            /**
             * TODO [네이티브 추가 설정 사항]
             * 1. 퍼미션 선언 :
             *    - <uses-permission android:name="android.permission.READ_PHONE_STATE" />
             *    - <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
             *    - <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
             * 2. 전역 변수 선언 실시 : ValueCallback mFilePathCallback;
             * */
            // ----------------------------------
            // TODO [웹뷰 파일 콜백 지정 실시 : onActivity()]
            mFilePathCallback = filePathCallback;
            // ----------------------------------
            // [파일 타입에 따라서 Intent 처리 수행 실시]
            // ----------------------------------
            return true;
        }
    });
 

[결과 출력]

 

반응형
Comments