打开文件夹里的下一个文件
MacDroid610 ms
对比
同一台 Mac、同一部手机、同样的文件。
同一台 Mac、同一部手机、同样的文件。选一项测试来回放。
| PortLine | MacDroid | |||
|---|---|---|---|---|
| USB 调试 | 200 张照片, Mac → 手机 | 12.8 s | 15.5 s | 1.2× 更快 |
| USB 调试 | 200 张照片, 手机 → Mac | 4.7 s | 54.5 s | 11.5× 更快 |
| USB 调试 | 10 段视频, Mac → 手机 | 1:04.8 | 1:07.5 | 1.04× 更快 |
| USB 调试 | 10 段视频, 手机 → Mac | 1:01.7 | 1:05.8 | 1.07× 更快 |
| 文件传输 | 200 张照片, Mac → 手机 | 17.3 s | 19.4 s | 1.1× 更快 |
| 文件传输 | 200 张照片, 手机 → Mac | 13.3 s | 39.4 s | 3.0× 更快 |
| 文件传输 | 10 段视频, Mac → 手机 | 1:08.3 | 1:59.4 | 1.7× 更快 |
| 文件传输 | 10 段视频, 手机 → Mac | 1:06.8 | 1:54.2 | 1.7× 更快 |
| Wi-Fi | 200 张照片, Mac → 手机 | 13.0 s | 21.8 s | 1.7× 更快 |
| Wi-Fi | 200 张照片, 手机 → Mac | 19.6 s | 2:05.1 | 6.4× 更快 |
| Wi-Fi | 10 段视频, Mac → 手机 | 1:34.8 | 2:25.9 | 1.5× 更快 |
| Wi-Fi | 10 段视频, 手机 → Mac | 17:52.1 | 20:38.1 | 1.2× 更快 |
Nothing Phone (3a) · MacBook Pro (M1 Pro) · MacDroid 2.10 · 2026 年 10 月
3 分钟 · 无声音
通过 USB 三轮测量的中位数(2026 年 10 月 22 日)。
| PortLine | MacDroid | ||
|---|---|---|---|
| 打开文件夹里的下一个文件 | 1 ms | 610 ms | 快 610× |
| 从手机复制 200 MB 文件夹 | 5.7 s | 41.2 s | 快 7.2× |
| 打开文件夹里唯一的文件 | 133 ms | 864 ms | 快 6.5× |
| 读取 200 个小文件 | 6.7 s | 24 s | 快 3.6× |
| 手机上的新文件出现在 Finder 中 | 1.5 s | > 60 s | 快 > 40× |
| 完成的日常操作 | 52/52 | 28/52 | +24 |
真实时间。下一张照片 1 毫秒对 610 毫秒。
以 4 倍速显示。5.7 秒对 41.2 秒。






等待中…✓ 已显示60 秒后仍未显示






等待中…✓ 已显示60 秒后仍未显示
手机把照片存进 Finder 中打开的文件夹。 3 秒后 12 倍速。
Nothing Phone (3a) · Android 16 · USB
复制、重命名、移动和删除,在手机上核实。
MacDroid610 ms
MacDroid41.2 秒
MacDroid超过 60 秒
MacDroid0/8
MacDroid0/2
MacDroid从未出现
三轮的中位数。越短越快。
| Test | PortLine | MacDroid |
|---|---|---|
| 从手机读回 200 个小文件(16 KB) | 6.65 s | 24 s |
| 从手机复制含 50 个 4 MiB 文件的文件夹(ditto) | 5.68 s | 41.17 s |
| 读取 50 个 4 MiB 文件,四个并行 | 5.4 s | 7.44 s |
| 打开文件夹中的下一个文件 | 1 ms | 609.5 ms |
| 打开 200 个文件的文件夹中的一个文件 | 159 ms | 599 ms |
| 打开文件夹中唯一的文件 | 133 ms | 864 ms |
| 把 200 个小文件(16 KB)复制到手机 | 9.16 s | 9.39 s |
| 把 50 个 4 MiB 文件复制到手机 | 6.59 s | 6.62 s |
Nothing Phone (3a) · Android 16 · USB
macOS 只有在其文件提供程序数据库刷新之后,才会把刚下载的文件交给请求它的应用,而刷新由大约半秒后的计时器触发,除非新的下载请求强制刷新。MacDroid 每次打开都要等这个计时器。PortLine 把文件夹里接下来的文件作为一个请求一起索取,立即强制刷新,下一个文件在你点按之前就已就绪。
| PortLine | MacDroid | |
|---|---|---|
| 把 1 GiB 文件复制到手机 | 28.9 s · 37.2 MB/s | 35.4 s · 30.4 MB/s |
| 读回 1 GiB 文件 | 28.2 s · 38.1 MB/s | 29.5 s · 36.4 MB/s |
| 列出含 2,000 个文件的新文件夹 | 3.44 s | 文件夹从未出现 |
2026 年 10 月 17 日,Nothing Phone,USB 2.0。
Nothing Phone (3a) · Android 16 · USB
| 文件夹 | PortLine | MacDroid(实测) |
|---|---|---|
| 在 Finder 中打开,或最近 2 分钟内显示过 | 打开时立即;更改后一分钟内每 2 秒;之后每 5 秒 | 高负载下 18–40 秒;低负载下即使做了文件检查,60 秒内也未到达 |
| 在 Finder 中关闭,或最近 10 分钟内被其他应用列出 | 每 30 秒 | 不再读取 |
| 其他 | Finder 打开时 | 打开时,或文件检查后 |
每一步都在应用的 Finder 位置中完成,然后通过另一条连接在手机上核实。Nothing Phone,Android 16,2026 年 10 月 17 日,对比 MacDroid 2.10。
55 项中 PortLine 在 36 项更快或唯一能完成;MacDroid 在 2 项领先,约十分之一秒;11 项在 ±10% 以内。MacDroid 有 16 项无法完成。
| 测试 | PortLine | MacDroid | 更优 |
|---|---|---|---|
| create folder | 0.42 s | 0.34 s | tie |
| copy 64 KB file | 0.23 s | 0.96 s | PortLine |
| overwrite existing file | 0.67 s | 0.59 s | tie |
| append to file | 0.63 s | 0.63 s | tie |
| zero-byte file | 0.14 s | 0.41 s | PortLine |
| copy nested folder (30 files, 9 folders) | 1.52 s | 4.28 s | PortLine |
| name: emoji | 0.73 s | 0.71 s | tie |
| name: accents (NFD from macOS) | 0.16 s | 0.77 s (written decomposed, NFD) | PortLine |
| name: japanese | 0.69 s | 0.75 s | tie |
| name: spaces | 0.83 s | 0.84 s | tie |
| name: leading dot | 0.83 s | 0.83 s | tie |
| name: long (240 bytes) | 0.87 s | 0.72 s | MacDroid |
| name: colon | 0.87 s (look-alike name) | fails | PortLine |
| name: question mark | 0.7 s (look-alike name) | fails | PortLine |
| name: asterisk | 0.84 s (look-alike name) | fails | PortLine |
| name: pipe | 0.13 s (look-alike name) | fails | PortLine |
| name: backslash | 0.78 s (look-alike name) | fails | PortLine |
| name: double quote | 0.82 s (look-alike name) | fails | PortLine |
| name: angle brackets | 0.76 s (look-alike name) | fails | PortLine |
| name: trailing space | 0.82 s | 0.71 s | MacDroid |
| name: trailing dot | 0.79 s | 0.76 s | tie |
| Finder metadata files (.DS_Store, ._*) | stays on the Mac | stays on the Mac | |
| rename file | 0.53 s | 0.8 s | PortLine |
| case-only rename | 0.58 s | fails | PortLine |
| rename folder with 5 files | 0.36 s | 0.66 s | PortLine |
| move file into folder | 0.47 s | fails | PortLine |
| move folder into folder | 0.52 s | 0.9 s | PortLine |
| move file to Trash | 0.29 s | 2.06 s | PortLine |
| move folder to Trash | 0.37 s | 2.84 s | PortLine |
| delete file (rm) | 1.85 s | 2.15 s | PortLine |
| delete folder tree (rm -r, 10 files) | 2.82 s | 2.73 s | tie |
| paste a file (APFS clone, as Finder does) | 0.43 s | 0.51 s | tie |
| paste a folder (30 files, clone) | 1.95 s | 3.49 s | PortLine |
| Duplicate a phone file | 0.4 s | 0.62 s | PortLine |
| rename to a name with : and ? | 0.31 s | fails | PortLine |
| copy a tagged file with extended attributes | 0.47 s | 0.84 s | PortLine |
| copy a phone file to the Mac (not downloaded yet) | 0.19 s | fails (never appeared) | PortLine |
| p2-open: phone makes folder | 3.35 s | fails | PortLine |
| p2-open: phone creates file | 1.48 s | — | PortLine |
| p2-open: read file made on phone | ok | — | |
| p2-open: phone changes file | 6.23 s | — | PortLine |
| p2-open: read changed file | ok | — | |
| p2-open: phone renames file | 6.64 s | — | PortLine |
| p2-open: phone deletes file | 3.11 s | — | PortLine |
| p2-open: phone makes subfolder | 3.03 s | — | PortLine |
| p2-open: change in a closed folder shows when Finder opens it | 7.97 s | — | PortLine |
| read 50 x 4096 KiB made on the phone (4 at a time) | 8.97 s, 23.4 MB/s | — | PortLine |
| read 200 x 16 KiB made on the phone (4 at a time) | 10.4 s, 0.3 MB/s | — | PortLine |
| list a new 2,000-file folder | 3.44 s | fails (folder never appeared) | PortLine |
| list it again | 0.002 s | — | PortLine |
| copy 1 GiB file | 28.9 s, 37.2 MB/s | 35.4 s, 30.4 MB/s | PortLine |
| read 1 GiB file back from the phone | 28.2 s, 38.1 MB/s | 29.5 s, 36.4 MB/s | tie |
| p2-open: folder visible after MacDroid file check | — | fails | |
| read 50 files made on the phone | — | fails (folder never appeared) | |
| read 200 files made on the phone | — | fails (folder never appeared) |
每个数字背后的测试工具、原始结果和录像都与项目一起保存。