`
sinykk
  • 浏览: 356906 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

android 让 webview 支持HTML中的 <input type='file'>

 
阅读更多
 /**
         * 上传文件file控件监控
         * */
        wv.setWebChromeClient(new MyWebChromeClient(){

		});



 /**
     * 监控文件选择
     * @author Administrator
     *
     */
    class MyWebChromeClient extends WebChromeClient {
        // The undocumented magic method override
        // Eclipse will swear at you if you try to put @Override here
        public void openFileChooser(ValueCallback<Uri> uploadMsg) {

            mUploadMessage = uploadMsg;
            Intent i = new Intent(Intent.ACTION_GET_CONTENT);
            i.addCategory(Intent.CATEGORY_OPENABLE);
            i.setType("image/*");
            AiappActivity.this.startActivityForResult(
                    Intent.createChooser(i, "Image Browser"),
                    FILECHOOSER_RESULTCODE);
        }
    }
    /**
     * 返回文件选择
     */
    @Override
    protected void onActivityResult(int requestCode, int resultCode,
            Intent intent) {
        if (requestCode == FILECHOOSER_RESULTCODE) {
            if (null == mUploadMessage)
                return;
            Uri result = intent == null || resultCode != RESULT_OK ? null
                    : intent.getData();
            mUploadMessage.onReceiveValue(result);
            mUploadMessage = null;
     
        }
    }
分享到:
评论

相关推荐

    Android-解决在webview中input标签type="file"不能使用的问题

    以上就是解决在Android WebView中`&lt;input type="file"&gt;`不能使用问题的完整步骤。需要注意的是,如果你的应用需要兼容Android M及以上版本,还需要处理运行时权限。在Android 6.0(Marshmallow)及以上版本,访问...

    解决webView不支持网页,webViewinput type="file"上传功能

    以上就是解决WebView不支持网页中的`input type="file"`上传功能的基本步骤。在实际项目中,你可能还需要处理多选文件、文件类型过滤、权限请求等问题,确保用户体验的顺畅。通过这种方式,你可以在保持原生应用的...

    android webview input=file 失效解决方案

    然而,在使用Webview时,有时会遇到一个问题:当HTML页面中包含`&lt;input type="file"&gt;`用于上传文件的表单元素时,这个功能在Webview中可能无法正常工作。这通常是因为Android的安全策略限制了Webview对本地文件系统...

    Android WebView 不支持 H5 input type=”file” 解决方法

    通过网络搜索发现是因为 android webview 由于考虑安全原因屏蔽了 input type=”file” 这个功能 。 经过不懈的努力,以及google 翻译的帮助 在 stackoverflow 中找到了解决的方法。 具体可以理解为 重写webview 的...

    Android WebView 不支持 H5 input type="file" 解决方法

    Android WebView 不支持 H5 input type="file" 解决方法 Android WebView 是一个基于 WebKit 引擎的浏览器组件,可以在 Android 应用程序中嵌入网页内容。但是,当我们在 WebView 中使用 H5 的 input 标签时,发现...

    解决RN 的 webview 组件不支持android客户端上传图片文件问题

    React Native的`&lt;WebView&gt;`组件在Android上默认并不支持文件选择器,因此,当HTML中的表单尝试通过`&lt;input type="file"&gt;`标签选择本地图片时,用户可能无法看到文件选择对话框或者无法正常上传。 要解决这个问题,...

    Android WebView支持input file启用相机/选取照片功能

    Android WebView支持input file启用相机/选取照片功能是指在Android应用程序中使用WebView组件时,如何启用input file的相机/选取照片功能。本文将通过实例代码详细介绍如何在Android WebView中启用input file的相机...

    webview支持type="file" 打开相机和相册

    在HTML中,`&lt;input type="file"&gt;`标签用于让用户选择本地文件。在默认情况下,这个标签会在Android和iOS的WebView中触发系统的文件选择器,让用户选择存储在设备上的文件。 ### 支持相机和相册 为了让用户不仅可以...

    android 之 webView 显示h5 执行选择图片或者拍照功能

    &lt;input accept="image/*" capture="camera" id="imgFile" name="imgFile" type="file"&gt; 用安卓的 webView 控件来显示h5网页 然后给webView 设置WebChromeClient WebChromeClient 主要处理解析,渲染网页等浏览器做...

    android的webView的登录实例

    &lt;button type="button" onclick="submitLogin()"&gt;登录&lt;/button&gt; &lt;/form&gt; &lt;script&gt; function submitLogin() { // JavaScript 代码处理登录逻辑 } &lt;/script&gt; &lt;/body&gt; &lt;/html&gt; ``` 4. **WebView配置与交互*...

    Android使用Html实现登录功能——重点掌握Webview js的使用

    webView.loadUrl("file:///android_asset/login.html"); ``` 这里的`loadUrl()`方法用于加载HTML文件,通常将HTML文件放在`assets`目录下。例如,我们有一个名为`login.html`的文件,里面包含了登录表单。 HTML...

    Android webview调用摄像头扫描二维码

    为了实现调用摄像头的功能,我们需要在HTML中使用HTML5的`&lt;input type="file"&gt;`标签,但默认情况下,Android的Webview不支持直接访问设备摄像头。因此,我们需要自定义一个`WebViewClient`,重写`...

    前端H5获取Android原生相册文件和拍照功能直接重新WebView的方法即可

    总的来说,为了让前端H5在Android设备上能顺利获取相册文件和拍照,开发者需要重写WebView,拦截`&lt;input type="file"&gt;`的请求,启动原生选择器或相机,并通过JSBridge传递结果。这个过程涉及到Android的意图(Intent...

    android WebView上传文件

    &lt;input type="file" id="fileInput" style="display:none" /&gt; &lt;script&gt; window.fileChooserCallback = function(filePath) { // filePath是Java端返回的文件路径,这里可以继续处理,如设置input[type=file]的value...

    android使用webview上传文件兼容问题解决支持5.0以上系统

    首先,我们需要了解在Android 5.0之前,文件上传通常是通过`&lt;input type="file"&gt;`标签实现的。但是,从Android 5.0开始,系统引入了更严格的权限管理,即运行时权限,这对Webview的文件选择器产生了影响。默认情况下...

    Android webview 上传图片

    - HTML5提供了`&lt;input type="file"&gt;`标签用于选择本地文件,通过监听`change`事件获取选中的文件。 - JavaScript可以通过`FileReader`对象读取文件内容,或者使用`FormData`对象配合`XMLHttpRequest`发送文件到...

    Android 解决WebView无法上传文件的问题

    WebView 是 Android 中的一个组件,用于展示网页内容,但是它并不支持上传文件,这给开发者带来了很大的困扰。解决这个问题需要我们自己实现相应的方法。 首先,我们需要定义三个变量:uploadMessageAboveL、FILE_...

    android webview上传文件

    &lt;input type="file" accept="image/*"&gt; ``` 服务端的实现通常涉及接收上传的文件,这可能是一个HTTP POST请求,包含一个或多个multipart/form-data的文件部分。在Java中,你可以使用诸如Apache HttpClient或Spring...

    WebView在android端File标签的拍照跟图片上传

    在HTML页面中,我们可以通过`&lt;input type="file" accept="image/*" capture&gt;`标签来触发文件选择器。`accept`属性指定可接受的文件类型,`capture`属性则可以用来直接启动相机(如果设备支持)。 注意,由于安全和...

    解决react-native 的 webview 组件不支持android客户端上传图片文件问题

    由于安全性和隐私原因,Android的WebView默认禁止了文件选择器,因此在尝试通过HTML `&lt;input type="file"&gt;`标签触发文件选择时,会遇到问题。 为了解决这个限制,我们需要使用React-Native的`react-native-webview`...

Global site tag (gtag.js) - Google Analytics