我在 WebView 中加载了一个页面时遇到问题 - 我不打算发布整个应用程序的代码,因为我的问题非常具体:我的 HTML 页面中的“选择文件”按钮适用于Android Studio 创建了模拟器,但别无他处。
该按钮运行此代码:
<input type='file' id='fileInput' accept='text/plain' onchange='openFile(event);'>
var openFile = function(event) {
var input = event.target;
var reader = new FileReader();
reader.onload = function(e){
/* various string parsing */
};
reader.readAsText(input.files[0]);
};
这在我的 API 23 模拟器上工作得很好:单击按钮打开设备的默认文件选择器以选择一个文件。但是,在我的 API 16 实际手机上,单击此按钮没有任何反应。此外,在 API 18 的 Genymotion 模拟器上,单击按钮什么也不做。我可以做些什么来解决这个问题吗?该按钮在我的手机和 Genymotion 模拟器上都没有产生任何错误消息,它就在那里,什么也没有发生。
我需要该应用程序在允许语音到文本的设备上运行,所以我不能只使用模拟器,只要我愿意。
原文由 user3475234 发布,翻译遵循 CC BY-SA 4.0 许可协议
设置
WebChromeClient
选择文件代码