PortLine

对比

PortLine vs MacDroid

同一台 Mac、同一部手机、同样的文件。

每项测试都更快。

同一台 Mac、同一部手机、同样的文件。选一项测试来回放。

USB 调试

200 张照片手机 → Mac

PortLineAdvanced USB完成
4.7s200/200
MacDroidADB 模式完成
54.5s200/200
11.5×更快 4.7 s 对 54.5 s
每项测试都更快。
PortLineMacDroid
USB 调试200 张照片, Mac → 手机12.8 s15.5 s1.2× 更快
USB 调试200 张照片, 手机 → Mac4.7 s54.5 s11.5× 更快
USB 调试10 段视频, Mac → 手机1:04.81:07.51.04× 更快
USB 调试10 段视频, 手机 → Mac1:01.71:05.81.07× 更快
文件传输200 张照片, Mac → 手机17.3 s19.4 s1.1× 更快
文件传输200 张照片, 手机 → Mac13.3 s39.4 s3.0× 更快
文件传输10 段视频, Mac → 手机1:08.31:59.41.7× 更快
文件传输10 段视频, 手机 → Mac1:06.81:54.21.7× 更快
Wi-Fi200 张照片, Mac → 手机13.0 s21.8 s1.7× 更快
Wi-Fi200 张照片, 手机 → Mac19.6 s2:05.16.4× 更快
Wi-Fi10 段视频, Mac → 手机1:34.82:25.91.5× 更快
Wi-Fi10 段视频, 手机 → Mac17:52.120:38.11.2× 更快

Nothing Phone (3a) · MacBook Pro (M1 Pro) · MacDroid 2.10 · 2026 年 10 月

观看完整测试。

3 分钟 · 无声音

更多测试

通过 USB 三轮测量的中位数(2026 年 10 月 22 日)。

PortLine 对比 MacDroid 2.10 (1205) · MacBook Pro,Apple M1 Pro,macOS 27.0.1 · USB 2.0,两款应用均通过 Android 调试(ADB)· 2026 年 10 月 22 日

数据对比
PortLineMacDroid
打开文件夹里的下一个文件1 ms610 ms快 610×
从手机复制 200 MB 文件夹5.7 s41.2 s快 7.2×
打开文件夹里唯一的文件133 ms864 ms快 6.5×
读取 200 个小文件6.7 s24 s快 3.6×
手机上的新文件出现在 Finder 中1.5 s> 60 s快 > 40×
完成的日常操作52/5228/52+24

依次打开手机拍摄的 20 张照片

PortLine
0.00 s
MacDroid
0.00 s

真实时间。下一张照片 1 毫秒对 610 毫秒。

把 200 MB 的文件夹从手机复制到 Mac

PortLine
0.0 s
MacDroid
0.0 s

以 4 倍速显示。5.7 秒对 41.2 秒。

手机上的新照片

PortLine1.48 s
Summer 2026

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

MacDroid> 60 s
Summer 2026

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

手机把照片存进 Finder 中打开的文件夹。 3 秒后 12 倍速。

Nothing Phone (3a) · Android 16 · USB

52 项日常操作

复制、重命名、移动和删除,在手机上核实。

PortLine52/52
  • 52 完成
MacDroid28/52
  • 28 完成
  • 13 失败
  • 11 因前一步失败未能运行

换过来的理由

011 ms

打开文件夹里的下一个文件

MacDroid610 ms

025.7 秒

从手机复制 200 MB 文件夹

MacDroid41.2 秒

031.5 秒

手机上新建的文件出现在 Finder 中

MacDroid超过 60 秒

048/8

含 : ? * | \ " < > 的文件名也能复制

MacDroid0/8

052/2

只改大小写的重命名,以及移入文件夹

MacDroid0/2

063.4 秒

新建的 2,000 个文件的文件夹能显示

MacDroid从未出现

读取、打开、复制

三轮的中位数。越短越快。

PortLineMacDroid越短越快

从手机读回 200 个小文件(16 KB)

PortLine6.65 s
MacDroid24 s
快 3.6 倍

从手机复制含 50 个 4 MiB 文件的文件夹(ditto)

PortLine5.68 s
MacDroid41.17 s
快 7.2 倍

读取 50 个 4 MiB 文件,四个并行

PortLine5.4 s
MacDroid7.44 s
快 1.4 倍

打开文件夹中的下一个文件

PortLine1 ms
MacDroid609.5 ms
快 610 倍

打开 200 个文件的文件夹中的一个文件

PortLine159 ms
MacDroid599 ms
快 3.8 倍

打开文件夹中唯一的文件

PortLine133 ms
MacDroid864 ms
快 6.5 倍

把 200 个小文件(16 KB)复制到手机

PortLine9.16 s
MacDroid9.39 s
相当

把 50 个 4 MiB 文件复制到手机

PortLine6.59 s
MacDroid6.62 s
相当
读取、打开、复制
TestPortLineMacDroid
从手机读回 200 个小文件(16 KB)6.65 s24 s
从手机复制含 50 个 4 MiB 文件的文件夹(ditto)5.68 s41.17 s
读取 50 个 4 MiB 文件,四个并行5.4 s7.44 s
打开文件夹中的下一个文件1 ms609.5 ms
打开 200 个文件的文件夹中的一个文件159 ms599 ms
打开文件夹中唯一的文件133 ms864 ms
把 200 个小文件(16 KB)复制到手机9.16 s9.39 s
把 50 个 4 MiB 文件复制到手机6.59 s6.62 s

Nothing Phone (3a) · Android 16 · USB

为什么打开更快

macOS 只有在其文件提供程序数据库刷新之后,才会把刚下载的文件交给请求它的应用,而刷新由大约半秒后的计时器触发,除非新的下载请求强制刷新。MacDroid 每次打开都要等这个计时器。PortLine 把文件夹里接下来的文件作为一个请求一起索取,立即强制刷新,下一个文件在你点按之前就已就绪。

大文件和大文件夹

PortLineMacDroid
把 1 GiB 文件复制到手机28.9 s · 37.2 MB/s35.4 s · 30.4 MB/s
读回 1 GiB 文件28.2 s · 38.1 MB/s29.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

手机上的更改多快到达 Finder

文件夹PortLineMacDroid(实测)
在 Finder 中打开,或最近 2 分钟内显示过打开时立即;更改后一分钟内每 2 秒;之后每 5 秒高负载下 18–40 秒;低负载下即使做了文件检查,60 秒内也未到达
在 Finder 中关闭,或最近 10 分钟内被其他应用列出每 30 秒不再读取
其他Finder 打开时打开时,或文件检查后

55 个日常边缘案例

每一步都在应用的 Finder 位置中完成,然后通过另一条连接在手机上核实。Nothing Phone,Android 16,2026 年 10 月 17 日,对比 MacDroid 2.10。

36PortLine 领先或唯一完成
11±10% 以内
2MacDroid 领先
16MacDroid 无法完成

55 项中 PortLine 在 36 项更快或唯一能完成;MacDroid 在 2 项领先,约十分之一秒;11 项在 ±10% 以内。MacDroid 有 16 项无法完成。

测试PortLineMacDroid更优
create folder0.42 s0.34 stie
copy 64 KB file0.23 s0.96 sPortLine
overwrite existing file0.67 s0.59 stie
append to file0.63 s0.63 stie
zero-byte file0.14 s0.41 sPortLine
copy nested folder (30 files, 9 folders)1.52 s4.28 sPortLine
name: emoji0.73 s0.71 stie
name: accents (NFD from macOS)0.16 s0.77 s (written decomposed, NFD)PortLine
name: japanese0.69 s0.75 stie
name: spaces0.83 s0.84 stie
name: leading dot0.83 s0.83 stie
name: long (240 bytes)0.87 s0.72 sMacDroid
name: colon0.87 s (look-alike name)failsPortLine
name: question mark0.7 s (look-alike name)failsPortLine
name: asterisk0.84 s (look-alike name)failsPortLine
name: pipe0.13 s (look-alike name)failsPortLine
name: backslash0.78 s (look-alike name)failsPortLine
name: double quote0.82 s (look-alike name)failsPortLine
name: angle brackets0.76 s (look-alike name)failsPortLine
name: trailing space0.82 s0.71 sMacDroid
name: trailing dot0.79 s0.76 stie
Finder metadata files (.DS_Store, ._*)stays on the Macstays on the Mac
rename file0.53 s0.8 sPortLine
case-only rename0.58 sfailsPortLine
rename folder with 5 files0.36 s0.66 sPortLine
move file into folder0.47 sfailsPortLine
move folder into folder0.52 s0.9 sPortLine
move file to Trash0.29 s2.06 sPortLine
move folder to Trash0.37 s2.84 sPortLine
delete file (rm)1.85 s2.15 sPortLine
delete folder tree (rm -r, 10 files)2.82 s2.73 stie
paste a file (APFS clone, as Finder does)0.43 s0.51 stie
paste a folder (30 files, clone)1.95 s3.49 sPortLine
Duplicate a phone file0.4 s0.62 sPortLine
rename to a name with : and ?0.31 sfailsPortLine
copy a tagged file with extended attributes0.47 s0.84 sPortLine
copy a phone file to the Mac (not downloaded yet)0.19 sfails (never appeared)PortLine
p2-open: phone makes folder3.35 sfailsPortLine
p2-open: phone creates file1.48 s—PortLine
p2-open: read file made on phoneok—
p2-open: phone changes file6.23 s—PortLine
p2-open: read changed fileok—
p2-open: phone renames file6.64 s—PortLine
p2-open: phone deletes file3.11 s—PortLine
p2-open: phone makes subfolder3.03 s—PortLine
p2-open: change in a closed folder shows when Finder opens it7.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 folder3.44 sfails (folder never appeared)PortLine
list it again0.002 s—PortLine
copy 1 GiB file28.9 s, 37.2 MB/s35.4 s, 30.4 MB/sPortLine
read 1 GiB file back from the phone28.2 s, 38.1 MB/s29.5 s, 36.4 MB/stie
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)

MacDroid 做不到的事

  • 含 : ? * | \ " < > 的名称失败;PortLine 写入手机接受的相似字符。
  • 仅改大小写的重命名(photo.jpg → Photo.jpg)失败。
  • 把文件移进文件夹失败。
  • 手机上创建的文件即使做了文件检查也从未出现在其 Finder 位置中,因此手机上创建的东西都读不到。
  • 含 2,000 个文件的新文件夹从未出现。

MacDroid 相当或领先的地方

  • 通过 USB 调试数据线时,两款应用复制 10 段大视频都达到手机 USB 2.0 的上限,因此 PortLine 在这里领先 4% 到 7%。
  • 把 50 个 4 MiB 文件复制到手机,两款应用在两部手机上用时大致相同。
  • 两项小的名称测试,240 字节的名称和末尾空格,MacDroid 快约 0.1 秒,在误差范围内。
  • 单个小写入是势均力敌:PortLine 在防崩溃的重命名上多花约 50 毫秒,所以写了一半的文件绝不会以你的文件名出现。
  • MacDroid 在 Mac 上保留自己的缓存。它自己上传的文件能从该缓存快速读回;这里的数字使用的是手机创建、两款应用都没见过的文件。

我们如何测量

  1. 这 12 场比赛录制于 2026 年 10 月 24 日和 25 日。每款应用通过自己的 Finder 位置复制同样的 200 张照片(100 MB)和 10 段视频(2.45 GB),一次只运行一款应用,连接方式为 USB 调试(PortLine 的 Advanced USB、MacDroid 的 ADB 模式)、文件传输(Standard USB、MTP 模式)和 Wi-Fi。
  2. 上传在 macOS 的 File Provider 日志记录最后一个文件以完整大小在手机上创建时结束;下载在最后一个字节到达 Mac 时结束。每个文件都在手机或磁盘上核实过,录像中的计时也由同样的事件驱动。
  3. 通过 Wi-Fi 上传 10 段视频这一项,两款应用交替各录制两次,展示每款应用较好的一次,这条规则在第一次录制前就已确定。两组中都是 PortLine 更快。
  4. 每项测试都通过应用自己位于 ~/Library/CloudStorage 下的 Finder 位置进行,使用 Finder 发出的调用:copyfile、rename、open 和 read。
  5. 每次读取前,先删除本地副本,并等待 macOS 的文件提供程序空闲三秒,确保文件真正来自手机。
  6. 各组按 ABBA 交替:PortLine、MacDroid、MacDroid、PortLine,各三轮,在安静的 Mac 上。在其他工作负载下运行的组会被列出并排除。
  7. 读回的每个字节都与源文件比对(SHA-256)。两款应用全部 80 次计时运行都已完成。
  8. 交替轮次通过 USB 调试进行,使用 MacDroid 最快的 ADB 模式。录制的比赛涵盖全部三种连接。

每个数字背后的测试工具、原始结果和录像都与项目一起保存。

从 Android File Transfer 或 OpenMTP 过来?

Google 已不再提供 Mac 版 Android File Transfer。PortLine 的 Standard USB 模式使用与这些工具相同的文件传输(MTP)连接,但在 Finder 里而不是单独的窗口里;它的 Advanced USB 和 Secure Wi-Fi 模式走得比 MTP 更远。