Как реализовать пользовательский тип MIME для намерения ACTION_OPEN_DOCUMENT? - PullRequest
0 голосов
/ 29 января 2020

Я использую намерение ACTION_OPEN_DOCUMENT для запуска средства выбора системных файлов. Предполагается, что пользователь выбирает файл "gpx" (blabla.gpx).

Я бы хотел, чтобы средство выбора позволяло выбирать только файлы с расширением ".gpx".

Существует тип MIME "application / gpx + xml", но когда Я указываю, что в settype () намерения файлы gpx недоступны для выбора.

Есть ли способ создать пользовательский тип MIME "application / gpx", просто для использования в моем приложении? Если это так, как я могу связать его с расширением ", gpx"?

Может быть, я мог бы изменить расширение файла, связанное с типом mimne "application / gpx + xml"?

Или есть ли другой способ выполнить sh, что я хочу сделать?

Ответы [ 2 ]

0 голосов
/ 06 февраля 2020

Я сообщил об этом в Google, и вот их ответ:

Сотрудник указал, что application / gpx + xml - это установленный тип MIME, сопоставленный с файлом extension.gpx:

https://en.wikipedia.org/wiki/GPS_Exchange_Format

Мы рассмотрим добавление этого отображения в будущую версию Android.

0 голосов
/ 29 января 2020

Я использую намерение ACTION_OPEN_DOCUMENT для запуска средства выбора системных файлов.

ACTION_OPEN_DOCUMENT не ограничено файлами.

Я хотел бы пусть средство выбора позволяет выбирать только файлы с расширением «.gpx».

ACTION_OPEN_DOCUMENT не ограничивается поставщиками документов, использующими расширения файлов. И содержимое в формате GPX не ограничивается файлами с расширениями .gpx.

Существует тип MIME "application / gpx + xml", но когда я указываю что в settype () намерения файлы gpx недоступны для выбора.

Попробуйте его на эмуляторе Android SDK или на устройстве Google Pixel. Если вы столкнулись с той же проблемой, подайте отчет об ошибке.

Однако имейте в виду, что список типов MIME и связанных расширений файлов может быть настроен производителем устройства. Вот почему я рекомендую тестировать на эмуляторе SDK или Google Pixel, поскольку это чистый Google, поэтому за любые проблемы отвечает Google. Я согласен с тем, что .gpx является распространенным расширением файла для содержимого GPX, поэтому ACTION_OPEN_DOCUMENT с application/gpx+xml должно позволять пользователю выбирать этот контент.

Существует ли способ создания пользовательского пантомимы тип "application / gpx", просто для использования в моем приложении?

Нет, извините, по крайней мере, не таким образом, что влияет на ACTION_OPEN_DOCUMENT.

Может быть Я мог бы изменить расширение файла, связанное с mimne-типом application / gpx + xml?

Нет, извините, кроме как через сообщение об ошибке, которое я предложил.

Есть ли другой способ сделать sh что я хочу сделать?

Не совсем.

...