Технические вопросы и ответы QA1587

Как я заставляю свое приложение обнаруживаться в меню «Open in...» на iOS для определенного типа документа?

Q: Как я заставляю свое приложение обнаруживаться в меню «Open in...» на iOS для определенного типа документа?

A: Необходимо зарегистрировать типы документов, которые приложение может открыть с iOS. Чтобы сделать это, необходимо добавить тип документа к Info.plist приложения для каждого типа документа, который может открыть приложение. Дополнительно, если какие-либо из типов документов не будут известны iOS, то необходимо будет предоставить Uniform Type Identifier (UTI) для того типа документа.

Добавление типа документа

Для добавления типа документа делают следующее:

  1. В Вашем проекте XCode выберите цель, к которой Вы хотите добавить тип документа.

  2. Выберите вкладку Info.

  3. Щелкните по кнопке раскрытия для Типов документов для открытия типов документов.

  4. Щелкните «+» кнопка.

  5. В недавно создаваемом типе документа:

    • Введите имя типа документа.

    • В «Types» раздел заполняют UTI для нового типа.

    • Обеспечьте значок для документа.

  6. Щелкните по треугольнику раскрытия для открытия Additional document type properties.

  7. Щелкните в таблице для добавления нового ключа и значения.

    • Для типа значения ключа: CFBundleTypeRole.

    • Для типа значения: Редактор.

  8. Щелкните + кнопка для добавления другой пары ключ/значение.

    • Для типа значения ключа: LSHandlerRank.

    • Для типа значения: Владелец.

Добавление пользовательского UTI

Если тип документа, который Вы добавляете, будет пользовательским типом документа или типом документа, о котором уже не знает iOS, то необходимо будет определить UTI для типа документа. Для добавления нового UTI делают следующее:

  1. В Вашем XCode проект выбирает цель, к которой Вы хотите добавить новый UTI.

  2. Выберите вкладку Info.

  3. Щелкните по кнопке раскрытия для Экспортируемого UTIs.

  4. Щелкните «+» кнопка.

  5. Выберите «Add Exported UTI».

    • В поле Description заполните описание UTI.

    • В поле Identifier заполните идентификатор для UTI.

    • В Conforms To поле заполняет список UTIs, которому соответствует этот новый UTI.

  6. Переключите “Дополнительный импортированный треугольник раскрытия” свойств UTI для открытия таблицы, где можно добавить некоторую дополнительную информацию.

  7. Щелкните в пустой таблице и списке элементов, которые могут быть добавлены к таблице, будет выведен на экран.

  8. Введите в «UTTypeTagSpecification».

  9. Установите тип в Словарь.

  10. Щелкните по треугольнику раскрытия, чтобы открыть его и щелкнуть + кнопка в строке таблицы для добавления записи.

  11. Для “Нового элемента” изменяют имя на «public.filename-расширение».

  12. Поскольку тип элемента изменяет его для «Выстраивания».

  13. Переключитесь открытый элемент, который Вы просто добавили, и щелкните + кнопка в строке таблицы.

  14. Для элемента 0 изменяют «значение» на расширение файла Вашего документа. Например, txt, PDF, docx, и т.д.

Пример

Вот конкретный пример пользовательского типа документа и экспортируемого UTI. Скажем, Вы добавляли новый тип документа информации о кошке. Если бы документ имел расширение файла 'catinfo' тогда, когда Вы были закончены с шагами, показанными выше, то Ваша информация была бы похожа на это:

  Настройки Example рисунка 1 для информационного типа документа кошки.

Как протестировать Ваш пользовательский тип документа

Самый простой способ протестировать Ваш пользовательский тип документа состоит в том, чтобы послать Ваш пользовательский файл по электронной почте к Вашему устройству на iOS. Перейдите на адрес электронной почты и гарантируйте, что присоединение там. Коснитесь и содержите присоединяемый значок документа. Это должно открыть легкую сдобу на iPad или лист действия на iPhone, показывающем все приложения, открывающие Ваш тип документа. Ваше приложение должно обнаружиться в списке. Коснитесь своего значка приложения, и Ваше приложение должно запустить и получить документ от электронной почты.

Советы по устранению неисправностей

Если Ваш список свойств не устанавливается, правильно затем пытаясь открыться, Ваш пользовательский документ от почты может не работать. Признаки - то, что Ваше пользовательское приложение обнаруживается в списке приложений для Вашего пользовательского типа документа, но присоединение никогда не передается к Вашему приложению. Сравните свой пользовательский тип документа с один показанный на рисунке 1 этого Вопросы и ответы. Тщательно сравнение Вашего поля типа документа полем к примеру часто показывает ошибки.

Вот несколько вещей, которые необходимо проверить, когда вещи не работают как ожидалось:

Связанные документы

Универсальный обзор идентификаторов типов

Универсальная ссылка идентификаторов типов

Информационная ключевая ссылка списка свойств: базовые ключи основы

Объявленные системой универсальные идентификаторы типов



История версии документа


ДатаПримечания
14.04.2014

Обновленный снимок экрана.

26.08.2013

Редакционное обновление.

18.07.2013

Включенные разделы, как протестировать Ваш пользовательский тип документа и советы по устранению неисправностей.

14.08.2012

Новый документ, описывающий, как добавить типы документов к приложениям для iOS, таким образом, они могут быть открыты от Открытого в... меню.