我小时候就知道安卓系统的一个毛病:用 mtp 协议连电脑传文件的时候文件内容显示不全. 不过有了 usb-c 以后我找到了其它办法,所以一直以来我都没有仔细研究过. 直到刚刚我不得不从一个只有 micro-usb 的旧手机上转移一个文件,于是被迫面对了这个问题:我想转移的文件没在电脑上显示出来.
我搞来搞去,突发奇想做了这么一套流程:
a. 在电脑上新建 x 文件夹,这个 x 文件夹在手机上同步显示出来了;
b. 把我想转移的文件在手机上移动到 x 文件夹里面;
c. 在电脑上把整个 x 文件夹剪切粘贴到电脑的硬盘里.
结果是:电脑上显示这个剪切粘贴操作成功了,但是电脑硬盘里的 x 文件夹里面是空的;手机上也显示这个剪切粘贴操作成功了,于是手机上没有了 x 文件夹以及它里面的那个我想转移的文件. 也就是说,那个我想转移的文件,它就这样莫名其妙地消失了! 我真是被自己蠢死……
紧急查了一下,已经是十年前的 bug 了,workaround 是清理 media storage 数据库然后重启让手机重新建立索引:https://android.stackexchange.com/questions/46315/not-all-files-are-visible-over-mtp