按"你会先遇到什么"排序。每条都写了成因,因为知道原因通常比知道操作更有用。
解析失败,或者解析成功但取不到直链#
网盘接口不是公开协议,是抓包分析出来的。官方一改,旧接口就失效,这是这类工具的常态, 以实际运行结果为准;项目会跟着修,但修好之前它就是不工作。
排除掉接口本身的问题后,剩下的常见原因是没登录:未登录只能看到文件名,拿不到可用的下载地址。 先确认对应的网盘已经在「网盘」页登录过。
如果登录了、别的分享又能解析,只有这一条不行 —— 那多半是这条分享本身有额外限制 (例如需要提取码、或者分享已被取消)。
下载速度很慢,或者一直是 0#
先看是不是网盘给的直链本身有单连接限速 —— 很多网盘对免费用户就是这么限的, 分片并发能缓解,但突破不了服务端的策略。
另一个原因是风控。短时间内发起大量连接,或者频繁解析,都可能被临时限速。 这时候把线程数调小一点反而更快。
还有一类是链接过期:网盘直链通常带签名和有效期,放置太久再点开始就会失败。 重新解析一次拿新直链即可。
下载中断了,要重头再来吗#
不用。分片进度是落盘的,重新开始同一个任务会从已经写完的部分接着下。
应用被系统杀掉、手机重启,任务也还在「下载」页里,接着点继续就行。
换了手机,要重新登录所有网盘吗#
不必逐个重登。在原设备上「设置 → 导出网盘认证」生成一个加密文件, 在新设备的同一位置导入即可。
导出时设的口令请记好 —— 文件用它派生的密钥加密,没有找回途径。
改了锁屏密码 / 指纹之后,提示登录失效#
这是 Android Keystore 的行为,不是应用的问题:系统认为设备的安全凭证变了, 之前用旧凭证保护过的密钥会被永久作废,取不出来。
重新登录一次即可,之后不会再受影响。(应用在生成密钥时特意没有绑定"每次使用都要验证身份", 就是为了减少这类情况,但系统层面的变更挡不住。)
检查更新说"已是最新",但其实有更新的版本#
如果你装的是预发布(prerelease)版本,旧版本确实会出现这个现象:GitHub 的 /releases/latest 接口按设计只返回"已正式发布的最新版",预发布的不在其中。
现在的检查更新改成了读发布列表、再按版本号(而不是发布时间)挑最大的那个, 已经不会出现这个问题。如果你在旧版本上遇到,更新到 2.6.19 之后就好了。
更新包下载很慢或者失败#
更新是从 GitHub 下载的,国内网络直连不稳定。应用内置了一个加速镜像通道, 直连失败时会走镜像。镜像只是一个转发,不改变文件本身,装之前仍然可以核对大小。
系统不让安装,提示"未知来源应用"#
应用没有上架任何应用商店,所以系统会拦一次。在提示里选择允许本次安装即可。 安装完成后这个授权不必保留。
磁力 / BT 链接下不动#
内置的下载引擎不做 BT。这类任务需要 Gopeed 内核:到「下载引擎」页导入内核后, 引擎会把这类链接交给它。内核不随安装包分发,需要你手动导入一次。
导入方式与校验规则写在下载引擎里。
下载中途崩溃,日志里有 OutOfMemoryError#
先升级到 2.7.2 或更高。
2.7.0–2.7.1 的引擎每开一个连接就固定分配 1MB 读缓冲,而线程数上限是 256 —— 256 × 1MB = 256MB,正好等于系统给应用的整个堆。堆被"活"缓冲占满后, 连 64 字节都分配不出来,就会崩。
这一版把缓冲改成按并发摊薄(总量封顶 32MB):256 连接时约 128KB/连接。 低线程数(默认 16)的行为完全不变,所以不需要调整任何设置; 线程数调得高的用户升级后也不会再崩。
崩溃栈可能指向 Okio 的 Watchdog 线程(SocketAsyncTimeout.timedOut), 那只是受害者——它只是想在超时时关掉连接。看到 target footprint 268435456 (256MiB)字样就可以确认是这个问题。
加密的 HLS 流下载失败#
先确认当前用的是默认引擎(TurboDL)。内置兼容引擎里的 HLS 实现是早期版本, 不支持 AES 加密和字节范围请求,遇到加密流会失败。
插件页说「JS 引擎不可用」#
先升级到 2.7.1 或更高。2.7.0 的自检程序本身写错了:它用「要一个字符串」的方式去读 JavaScript 的数字,而引擎的类型转换表里没有这条路径,必然报错 —— 于是引擎明明是好的, 却被报成不可用,装好的插件也就一直停在「未运行」。
2.7.1 起自检改用与引擎生产代码一致的取值方式,并且失败时会写明真实原因。 升级后进插件页点一次「重新检测」即可。
如果升级后仍然不可用,那就是真的有问题了:把「设置 → 导出日志」里的内容发到 Issues,自检结论里会带上具体原因。
下载到自定义目录失败#
Android 11 及以上,往公共 Download 以外的目录写文件需要「所有文件访问」权限。 到系统设置里给应用开这个权限即可;不想开就继续用默认目录。
日志在哪里,反馈问题时怎么给#
「设置 → 导出日志」会把应用与设备信息、关键诊断日志、以及当前运行的日志一起导出, 可以选择分享给其他应用或保存到下载目录。
导出前请自己看一眼。 日志里可能包含下载链接(网盘直链带签名,等于一把临时钥匙) 和文件名。虽然代码里对 Cookie、token 这类字段做了脱敏,但并不是每一行都过脱敏, 带签名的完整链接仍可能出现在里面。
上报问题时,附上这些信息能省掉好几轮来回:
- 应用版本(「关于」页可见)
- 手机型号与 Android 版本
- 出问题的网盘
- 复现步骤:点了什么、期望什么、实际发生了什么
- 日志文件
报告问题去哪里#
仓库的 Issues。没有聊天群, 所有反馈都在那里 —— 可搜索、可追溯,也不会因为某个群散掉而丢失。