webView中支持input的file的选择和alert弹出

alert()弹出

webView中支持input的file的选择和alert弹出

input的file现选择(特别说明:不同的android版本弹出的样式不同,选择文件后自动上传)

webView中支持input的file的选择和alert弹出

webView.setWebChromeClient(new WebChromeClient() { 
//支持alert弹出 
@Override 
public boolean onJsAlert(WebView view, String url, String message, 
JsResult result) { 
return super.onJsAlert(view, url, message, result); 

@Override 
public boolean onJsConfirm(WebView view, String url, 
String message, JsResult result) { 
return super.onJsConfirm(view, url, message, result); 

//webView中支持input的file现选择 
 // For Android 3.0+ 
        public void openFileChooser(ValueCallback<Uri> uploadMsg, String acceptType) {   
               if (mUploadMessage != null) return; 
               mUploadMessage = uploadMsg;    
               Intent i = new Intent(Intent.ACTION_GET_CONTENT); 
               i.addCategory(Intent.CATEGORY_OPENABLE); 
               i.setType("*/*"); 
                   startActivityForResult( Intent.createChooser( i, "File Chooser" ), Util.FILECHOOSER_RESULTCODE ); 
                } 
            // For Android < 3.0 
        public void openFileChooser(ValueCallback<Uri> uploadMsg) { 
               openFileChooser( uploadMsg, "" ); 
        } 
        // For Android  > 4.1.1 
      public void openFileChooser(ValueCallback<Uri> uploadMsg, String acceptType, String capture) { 
              openFileChooser(uploadMsg, acceptType); 
      }

    1. @Override
    2. protected   void  onActivityResult( int  requestCode,  int  resultCode,
    3. Intent intent) {
    4. if (requestCode==FILECHOOSER_RESULTCODE)
    5. {
    6. if  ( null  == mUploadMessage)  return ;
    7. Uri result = intent ==  null  || resultCode != RESULT_OK ?  null
    8. : intent.getData();
    9. mUploadMessage.onReceiveValue(result);
    10. mUploadMessage =  null ;
    11. }
    12. }
上一篇:Spring.Net-创建对象


下一篇:下载的chm手册打不开的解决方法?