Некоторые приложения Ubuntu 13.04 не могут получить доступ к файлам в системах, установленных на MTP. Зачем?

Ubuntu 13.04 поставляется с поддержкой MTP для доступа к файлам на новых устройствах Android. Мой Nexus 10 работает нормально: после подключения, я могу получить доступ к файлам N10 с помощью Nautilus, и я могу копировать с и на устройство. Evince будет открывать файлы PDF прямо с устройства, но некоторые приложения не могут открывать файлы непосредственно с устройства, такие как gedit или libreoffice. Гедит говорит что-то вроде:

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

Я полагаю, что MTP интегрирован на уровне gvfs, поэтому не должны ли все приложения с поддержкой gvfs иметь доступ к устройству MTP? Почему доказательство, а не gedit?

Я знаю, что MTP можно монтировать с помощью fuse, но было бы неплохо, если бы он работал с обычными приложениями из Nautilus, такими как sftp: // или smb: //.

14
задан 24 April 2013 в 13:00

2 ответа

У меня были проблемы с получением фотографий с моего Fujifilm FinePix S1500. Сообщение об ошибке:

Operation not supported by backend

Я решил это, размонтировав камеру и скопировав файлы из командной строки, используя gphoto2.

0
ответ дан 24 April 2013 в 13:00

Спецификация MTP не поддерживает базовые операции открытия / чтения / записи / закрытия, которые требуются для реализации нормального доступа к файлам в Linux - она ​​обеспечивает только загрузку / выгрузку файлов, и это то, что реализует бэкэнд MTP.

Наутилус будет копировать файлы очень хорошо, но как только вы попытаетесь использовать приложение, которое явно не учитывает ограниченный набор операций, вы получите ошибку. evince является примером приложения, которое поддерживает его (оно копирует файл в / tmp, а затем открывает его).

Итак, вот что происходит в 13.04.

Теперь, случается, что Google реализовал набор расширений MTP в Android, которые предлагают открывать / читать / писать / закрывать, и с их помощью можно обеспечить нормальный доступ к файлам. Я проделал эту работу в ветке разработки gvfs, но она пропустила окно выпуска 1.16, поэтому он не появится в Ubuntu до 13.10 в ближайшее время. 14.04 и до сих пор там нет

Тем временем вы можете использовать мой ppa для установки сборок, где я перенес эту работу.

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

Наконец, важно отметить, что эти расширения существуют только в стеке Google MTP. У вас есть Nexus 10, так что он будет работать под управлением стандартного Android - но кто-то, использующий устройство Samsung или устройства других производителей, не будет иметь этих расширений и может не иметь поддержки обычного файлового ввода-вывода.

0
ответ дан 24 April 2013 в 13:00

Другие вопросы по тегам:

Похожие вопросы: