
“随风潜入夜,润物细无声。”
English | 简体中文
让 Android 版 Microsoft Edge 将下载请求交给你偏好的外部下载器。
EdgeDL 是一款面向 Android 版 Microsoft Edge 的用户脚本,用于识别网页中的下载行为,并根据配置将下载请求转交给受支持的外部下载管理器,或交由 Microsoft Edge 默认处理。
核心能力
- 下载接管: 根据配置将下载请求交给受支持的外部下载管理器处理,或由 Microsoft Edge 默认处理。
- 下载管理器: 支持 1DM、1DM+、ADM、ABDM 和 FDM。
- 处理策略:
- 默认下载管理器: 为下载请求指定默认处理方式。
- 下载时询问: 下载前选择处理方式。
- Edge 处理: 明确跳过接管,让 Microsoft Edge 继续原生下载流程。
- 站点规则: 支持按网站启用或跳过下载接管。
- 下载识别: 识别常见下载链接及页面脚本触发的下载请求。
- 脚本菜单: 可通过用户脚本管理器菜单切换默认下载器和站点接管状态。
- 本地配置: 默认下载器、站点规则等配置保存在用户脚本管理器本地存储中。
支持的下载器
| 下载器 |
包名 / 含义 |
| 1DM |
idm.internet.download.manager |
| 1DM+ |
idm.internet.download.manager.plus |
| ADM |
com.dv.adm |
| ABDM |
com.abdownloadmanager |
| FDM |
org.freedownloadmanager.fdm |
| Edge |
跳过接管,让 Microsoft Edge 自行处理下载 |
EdgeDL 仅负责转交下载请求,最终是否能够成功下载取决于目标下载管理器及网站环境的支持情况。
安装
GitHub、ScriptCat 与 GreasyFork 提供稳定版本;CI Build 提供最新自动构建版本,适合提前体验更新。
用户脚本权限说明
| 权限 |
用途 |
GM_getValue / GM_setValue / GM_deleteValue |
保存默认下载器、站点规则等本地配置。 |
GM_registerMenuCommand |
提供用户脚本管理器菜单操作。 |
GM_info |
读取脚本版本等元数据。 |
unsafeWindow |
观察网页脚本触发的页面级跳转行为。 |
@match *://*/* |
在网页中检测下载链接和脚本触发的下载行为。 |
EdgeDL 运行在网页中,是因为下载按钮和下载链接可能出现在任意网站。脚本仅在本地处理这些请求,不会上传浏览记录或下载记录。
兼容性说明
EdgeDL 的下载接管能力可能受到网站行为、Android 系统限制、用户脚本管理器兼容性及下载管理器支持情况的影响,包括:
- blob URL、临时签名 URL、多段重定向等特殊下载机制;
- 依赖页面脚本、用户会话、鉴权 Cookie、请求 Header 或一次性 Token 的下载流程;
- Android 系统限制浏览器唤起外部应用;
- 下载管理器对特定协议或请求参数的支持情况;
- 用户脚本管理器对菜单、存储 API 和页面上下文访问的支持情况;
- Android 版 Microsoft Edge 不同版本的兼容性差异。
部分网站可能需要针对其下载流程进行额外适配。
与 EdgeDL-Ext 的关系
EdgeDL 是原始用户脚本项目。
EdgeDL-Ext 基于相同理念重新实现,并针对 Android 版 Microsoft Edge 的 Manifest V3 扩展环境进行了适配。
致谢
许可证
EdgeDL 基于 Apache License 2.0 开源。