当前位置: 首页 > 知识库问答 >
问题:

Android webview使用url链接下载任何文件或mp3文件

闻深
2023-03-14
(activitymain.xml)

<WebView android:id="@+id/webView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true" />

(AndroidManifest.xml)

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER"/>

(MainActivity.java)

webview = (WebView) findViewById(R.id.webView);
WebSettings webSettings = webview.getSettings();
webSettings.setJavaScriptEnabled(true);

webview.setWebViewClient(new WebViewClient());
webview.loadUrl("WEBLINK");

共有1个答案

蔡晨
2023-03-14

你看过这个问题吗?我认为您应该使用DownloadListener进行文件下载:

WebView.setDownloadListener:

注册呈现引擎无法处理内容时要使用的接口,而应改为下载该接口。这将替换当前处理程序。

webview.setDownloadListener(new DownloadListener() {
    public void onDownloadStart(String url, String userAgent,
                String contentDisposition, String mimetype,
                long contentLength) {
        Intent i = new Intent(Intent.ACTION_VIEW);
        i.setData(Uri.parse(url));
        startActivity(i);
    }
});
 类似资料:
  • 问题内容: 我正在编写一个应用程序,可以在其中输入来自Web的mp3文件的URL,当我单击下载时,该应用程序会将其下载到应用程序中。有人能帮我吗 ?我是ios开发的新手。我正在尝试学习Swift 问题答案: Xcode 8•Swift 3

  • 在我实现了一个Android应用程序的解决方案后,发布到web服务器并验证Google Order,然后发布一个下载链接。现在,我正在尝试编写一个应用程序的代码,以读取thankyou.php页面中的链接 该文件是一个“.dat”扩展名,来自某个链接。应用程序应该检索一个新页面中的链接,并让客户下载文件。

  • cmf_get_file_download_url($file, $expires = 3600) 功能 获取文件下载链接 参数 $file: string 文件路径,数据库里保存的相对路径 $expires: int 过期时间,单位 s 返回 string 文件链接

  • X2.2.0新增 sp_get_file_download_url($file,$expires=3600) 功能: 获取文件下载链接 参数: $file: 数据库保存的文件路径 $expires:文件过期时间(七牛) 返回: 类型string,文件下载链接 使用: $url = sp_get_file_download_url('portal/23232.png');

  • cmf_get_file_download_url($file, $expires = 3600) 功能 获取文件下载链接 参数 $file: string 文件路径,数据库里保存的相对路径 $expires: int 过期时间,单位 s 返回 string 文件链接

  • 作为一名新的程序员,我一直在做大量的尝试和错误,并坚持使用那些有效的发现,但我目前使用的方法并不适用于所有浏览器。 我们的PHP代码。 HTML下载按钮。 你可以看到我使用的是Html5和上面的Javascript方法,这意味着它只支持FireFox和GoogleChrome。 如何允许所有浏览器上的用户点击我们的按钮下载文件?