系统相关
首页 > 系统相关> > nautilus – 某些Ubuntu 13.04应用程序无法访问安装在MTP上的系统上的文件.为什么?

nautilus – 某些Ubuntu 13.04应用程序无法访问安装在MTP上的系统上的文件.为什么?

作者:互联网

Ubuntu 13.04附带MTP支持,可访问较新Android设备上的文件.我的Nexus 10工作正常:插入后,我可以使用Nautilus访问N10文件,我可以从设备复制到设备. Evince将直接从设备打开PDF文件,但有些应用程序无法直接从设备打开文件,如gedit或libreoffice.盖迪特说:

Cannot open file mtp://[usb:001,009]/65537/5823/5824

我想MTP是在gvfs级别集成的,所以不应该所有支持gvfs的应用程序都能够访问MTP设备吗?为什么说明但不是gedit?

我知道MTP可以安装保险丝,但如果它与Nautilus的常规应用程序一起工作就好了,就像sftp://或smb://一样.

解决方法:

MTP规范不支持在Linux上实现普通文件访问所需的基本打开/读/写/关闭操作 – 它只提供文件的上传/下载,这就是MTP后端实现的内容.

Nautilus会很好地复制文件,但是一旦您尝试使用未明确说明受限制操作集的应用程序,您就会收到错误. evince是支持它的应用程序示例(它将文件复制到/ tmp然后打开它).

所以,这就是13.04的情况.

现在,恰好是Google在Android中实现了一组提供开放/读/写/关闭的MTP扩展,并且可以使用这些扩展提供正常的文件访问.我已经在gvfs开发分支中完成了这项工作,但它错过了1.16发布窗口,因此它最早不会出现在Ubuntu中,直到13.10. 14.04仍然没有

在此期间,您可以使用我的ppa来安装我已向后移植此工作的构建.

https://launchpad.net/~langdalepl/+archive/gvfs-mtp

最后,重要的是要注意这些扩展仅存在于Google的MTP堆栈中.你有一个Nexus 10,所以它可以正常运行Android – 但使用三星设备的人或其他厂商的设备不会有这些扩展,也可能不支持普通的文件I / O.

标签:android,gedit,nautilus,mtp,13-04
来源: https://codeday.me/bug/20190808/1615697.html