Подтвердить что ты не робот

Android CONTENT TYPE - vnd.android.cursor.dir стандартная константа, определенная андроидом?

У меня есть основная проблема понимания типов контента.

Я просмотрел множество примеров и текст, объясняющий вышеприведенный термин, но все же имею некоторые основные проблемы понимания. Может ли кто-нибудь прояснить меня, пожалуйста.

В примере блокнота android и многих других упоминается vnd.android.cursor.dir/разрешает список элементов в каталоге и vnd.android.cursor.item/относится к определенному элементу в каталоге.

Является ли это vnd.android.cursor.dir некоторой стандартной константой, определенной андроидом. Откуда это взялось?, или я могу изменить его, как

vn.com.android.myexample.dir/

Как это разрешено и какова его цель, почему бы не использовать полный CONTENT_URI?

Извините, я полностью потерял и не понимаю этого.

4b9b3361

Ответ 1

Типы MIME, возвращаемые ContentProvider.getType, имеют две отдельные части:

type/subType

Типовая часть указывает известный тип, который возвращается для данного URI ContentProvider, поскольку методы запроса могут возвращать только Cursors, тип должен всегда быть:

  • vnd.android.cursor.dir, если вы ожидаете, что курсор будет содержать 0 до бесконечности

или

  • vnd.android.cursor.item, если вы ожидаете, что курсор будет содержать 1 элемент

Часть subType может быть либо хорошо известным подтипом, либо чем-то уникальным для вашего приложения.

Поэтому при использовании ContentProvider вы можете настроить вторую часть субтипа типа MIME, но не первую часть. например допустимый тип MIME для ваших приложений ContentProvider может быть:

vnd.android.cursor.dir/vnd.myexample.whatever

Тип MIME, возвращаемый из ContentProvider, может быть использован с помощью намерения, чтобы определить, какую активность запускать для обработки данных, полученных из заданного URI.

Ответ 2

Откуда это взялось?, или я могу изменить его, как vn.com.android.myexample.dir/

Нет, потому что "vnd" означает поставщика в деревьях регистрации MIME, в этом случае андроид.