iOS: как показать переключатель приложений «Открыть с помощью» (лист выбора ОС). Нет файла, просто ссылка. - PullRequest
0 голосов
/ 28 августа 2018

В iOS вы можете изменить свой plist, чтобы связать тип файла с вашим приложением, поэтому, если пользователь выбирает этот файл, появляется меню «Открыть с помощью…». Как я могу получить мое приложение в "Открыть с помощью" (используя CFBundleDocumentTypes)

Но как я могу сделать это для глубокой ссылки, которая не представляет файл? Другими словами, я просто хочу отправить глубокую ссылку по электронной почте, которая разрешается в App Switcher, чтобы позволить пользователю выбирать между 3 различными приложениями.

Я не размещаю и не отправляю файлы. Мне просто нужно передать параметры данных, так же, как это делает обычная глубокая ссылка, но ее можно открыть в 3 разных приложениях, а не только в 1.

1 Ответ

0 голосов
/ 28 августа 2018

Если это известный тип файла (т. Е. Не созданный вами тип / расширение файла), вы можете добавить его в Info.plist. Вот шаги:

1) Нажмите на свой проект в XCode и выберите вкладку «Информация»

2) Внизу вы должны увидеть «Типы документов»; вам нужно будет добавить свой тип документа. Для имени вы можете написать что угодно. Для типов, вы должны перейти к: https://developer.apple.com/library/archive/documentation/Miscellaneous/Reference/UTIRef/Articles/System-DeclaredUniformTypeIdentifiers.html#//apple_ref/doc/uid/TP40009259-SW1

3) Последний шаг - развернуть «Дополнительные свойства типа документа» и добавить пару ключ-значение. Ключ должен быть "LSHandlerRank" типа string. Значение должно быть «Альтернатива».

Если у вас есть пользовательский тип, вы пройдете те же шаги с некоторым исключением:

1) Добавьте тип документа с любым именем.

2) Добавить тип, соответствующий вашему проекту; например, если вы работали в Примерной компании с типом файла abc, я бы добавил к типам «com.example.abc».

3) Затем вам нужно добавить значение в область «Импортированные UTI». Для описания используйте все, что вы хотите.

4) Для идентификатора используйте то же значение, которое вы ввели на шаге 2 (т. Е. «Com.example.abc»)

5) Для «Соответствует» см. Документацию Apple здесь: https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/understanding_utis/understand_utis_conc/understand_utis_conc.html#//apple_ref/doc/uid/TP40001319-CH202-BCGJGJGA

6) В разделе «Дополнительные свойства UTI» вы добавите словарь с меткой «UTTypeTagSpecification»

7) Под словарем добавьте массив с меткой "public.filename-extension"

8) Под массивом добавьте два элемента. Первая должна быть прописной версией вашего расширения («ABC»), а вторая должна быть строчной версией вашего расширения («abc»).

Это должно позволить приложению всплыть в меню «Открыть с помощью», которое отображает iOS. Однако для обработки заливки вам необходимо добавить следующую функцию в ваш AppDelegate:

func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool

Это должно сделать это!

...