<a> 标签下载属性不适用于移动设备

<a> tag download attribute not working for mobile

我有如下锚标签:

<a className="badge-link" href="./download/myapp-v1.1.0.apk" download="myapp-v1.1.0.apk">
   <img src="img/download-apk.png" alt=""/>
</a>

只是想澄清一下,apk 文件和网站托管在服务器上,我正在从那里下载文件。

在PC上可以下载,但是在手机上会永远卡在下载状态。

它根本不显示下载进度。

我已经尝试关闭下载管理器并清除 android 的缓存,但我仍然得到相同的结果。

如何在 android/iphone 上运行此下载? 或者还有其他选择吗?

我认为这是因为当你在 PC 上测试时,你的项目目录中有 apk。 但是你手机上没有。

问题似乎与您在 href 中指定的路径有关。尝试提供像

这样的废弃路径

"http://somedomain.com/somefolder/somefile"

    <a className="badge-link" onclick="startDownload('http://somedomain.com/somefolder/somefile')" download="myapp-v1.1.0.apk"> <img src="img/download-apk.png" alt=""/> </a>

//Js to open in the same tab
<script>function startDownload(url) { window.location.href = url; }
</script>

在返回文件的 HTTP 响应中,确保内容配置 header 如下所示:

Content-Disposition: attachment; filename=filename.extesion;

查看此内容以了解更多内容 wiki-处置

只是为了测试给一些第三方link先用你的

我认为在您的电脑中,您的项目文件夹中有该 apk 文件,但在您的手机和项目文件夹中,该 apk 文件丢失了。 你也可以试试这个代码

<a className="badge-link" href="download/myapp-v1.1.0.apk" download>
    <img src="img/download-apk.png" alt=""/>
</a>

试试这个

<a className="badge-link" href="http://somedomain.com/download/myapp-v1.1.0.apk" download="myapp-v1.1.0.apk"> 
  <img src="img/download-apk.png" alt=""/> 
</a>