【发布时间】:2017-05-02 12:50:54
【问题描述】:
我有一个 webview,它显示了一个我没有制作的网站,所以我不知道它是如何工作的细节。
在这个网站上有几个按钮可以下载各种动态生成的文件。以下是在这些按钮之一上使用的 url 请求示例:test.example.com/Test/Export/Stuff?format=Pdf
这会导致在我的桌面浏览器和手机 chrome 上下载文件,但在我的应用程序上没有任何反应。
我已经在互联网上搜索了一个解决方案,但我无法找到一个有效的解决方案。
我已尝试按照此处所述设置 DownloadListener:https://forums.xamarin.com/discussion/4605/download-file-by-webview,但 OnDownloadStart 永远不会触发。
我还尝试在我的自定义 WebViewClient 中使用 ShouldOverrideUrlLoading 拦截 url 请求,如其他帖子中所述,但没有运气。
这里是按钮的html代码:
<input id="exportPdfButton" class="secondary hover" format="Pdf" value="Download (PDF)" name="exportPdfButton" type="submit">
<script id="dxss_848651839" type="text/javascript">
<!--
var dxo = new MVCxClientButton('exportPdfButton');
dxo.InitGlobalVariable('exportPdfButton');
dxo.SetProperties({'autoPostBack':true,'isNative':true});
dxo.SetEvents({'Click':ExportButtonOnClick});
dxo.AfterCreate();
//-->
</script>
我已经为 ACCESS_DOWNLOAD_MANAGER、WRITE_EXTERNAL_STORAGE 等设置了权限。
谁能帮我弄清楚如何在应用程序中下载这些文件?否则我可以提供任何其他信息来提供帮助吗?
【问题讨论】:
-
当您执行 POST 以启动下载时,下载似乎存在问题。我也有同样的问题。下载管理器似乎仅在您使用 GET 调用下载时才起作用。
标签: android webview xamarin.android