当我在Android
应用上打开某个活动时,会创建一个WebView
来加载HTML
页面(位于服务器上)。 HTML
页面中包含JavaScript
个代码。
在JavaScript
中,我有以下几行来显示“文件选择”形式:
var fileinput = document.createElement('input');
fileinput.type = 'file';
它在Chrome
上工作正常,我可以在发送之前浏览我的文件。但是,在我的Android
应用中,当我点击Choose file
按钮(在WebView
上)时,没有任何事情发生。
当我在另一个Chrome
中收到所选文件时,我使用以下代码下载(即:保存)传输的文件:
var href = document.createElement('a');
href.href = URL.createObjectURL(file);
href.download = metadata.name;
href.appendChild(document.createTextNode('download'));
item.appendChild(href)
但是它再次对Android
无效,尽管它在Chrome
上运行良好。
我的问题是如何让这些按钮(动态创建)在WebView
的{{1}}内工作?
答案 0 :(得分:0)
似乎webview没有为文件选择器提供默认实现。
然后,您应该为webview创建一个javascriptInterface,并定义选择要上载的文件和下载位置的方法。然后从你的HTML代码中调用这些方法。