Как зарегистрировать тип документа, который должен поддерживать сафари iOS?

Я работаю над приложением iOS, у которого есть extenstion, например .vlin и я хочу, чтобы устройство iOS распознало это расширение. Пока я могу добиться следующих

  • .vlin поддерживается в почтовом клиенте iphone
  • в моем приложении .vlin открывается файл Vlin .

Я использую cordova и добавил настройки конфигурации в config.xml

Но почему-то он не работает для браузера Safari iOS. Если я попытаюсь открыть файл в Safari iOS, он откроется в самом браузере как текстовый файл. Я хочу, чтобы он был открыт в моем приложении Vlin iOS.

Мой код info.plist и config.xml:

 <platform name="ios"> <preference name="IosLaunchMode" value="singleTask" /> <config-file platform="ios" target="*-Info.plist" parent="UIFileSharingEnabled"> <true /> </config-file> <config-file platform="ios" target="*-Info.plist" parent="CFBundleDocumentTypes"> <array> <dict> <key>CFBundleTypeName</key> <string>com.example.vlin.vlin</string> <key>CFBundleTypeRole</key> <string>Editor</string> <key>LSHandlerRank</key> <string>Owner</string> <key>LSItemContentTypes</key> <array> <string>com.example.vlin.vlin</string> </array> </dict> </array> </config-file> <config-file platform="ios" target="*-Info.plist" parent="UTExportedTypeDeclarations"> <array> <dict> <key>UTTypeConformsTo</key> <array> <string>public.data</string> </array> <key>UTTypeDescription</key> <string>Vlin document</string> <key>UTTypeIdentifier</key> <string>com.example.vlin.vlin</string> <key>UTTypeTagSpecification</key> <dict> <key>public.filename-extension</key> <string>vlin</string> </dict> </dict> </array> </config-file> 

Любая помощь очень ценится, спасибо заранее.

  • info.plist

      <key>UIFileSharingEnabled</key> <true/> <key>CFBundleDocumentTypes</key> <array> <dict> <key>CFBundleTypeName</key> <string>com.example.vlin.vlin</string> <key>CFBundleTypeRole</key> <string>Editor</string> <key>LSHandlerRank</key> <string>Owner</string> <key>LSItemContentTypes</key> <array> <string>com.example.vlin.vlin</string> </array> </dict> </array> <key>UTExportedTypeDeclarations</key> <array> <dict> <key>UTTypeConformsTo</key> <array> <string>public.data</string> </array> <key>UTTypeDescription</key> <string>Vlin document</string> <key>UTTypeIdentifier</key> <string>com.example.vlin.vlin</string> <key>UTTypeTagSpecification</key> <dict> <key>public.filename-extension</key> <string>vlin</string> </dict> </dict> </array> </dict> 

примерный формат файла: invite.vlin

 { "invite”: { "name": “Some College", "identifier": “xxxxxxxxxxxxxxxxx” }, “value”: “xxxxxxxxxxxxxx” } 

One Solution collect form web for “Как зарегистрировать тип документа, который должен поддерживать сафари iOS?”

EDIT2:

Ваша настоящая проблема заключается в том, что сафари видит ваш .vlin-файл в виде текстового файла и не даст вам возможность открыть его в другом приложении, возможно, если вы настроите сервер должным образом, чтобы служить ему как com.example.vlin.vlin или, возможно, в качестве application/json он должен показать вам диалог с открытием.

В качестве примера вы можете протестировать этот .vlin-файл на моем сервере.

http://jcesarmobile.byethost33.com/test4.vlin

Это не настоящий .vlin-файл, это файл .vlin, зашифрованный и переименованный в .vlin, и сафари показывает диалог открытия с диалогом

РЕДАКТИРОВАТЬ:

Не уверен, почему люди сбрасываются, тег config-file из config.xml не реализован, см. Проблему для его реализации .

Оригинальный ответ:

Вы еще не можете использовать тег config-file внутри файла config.xml (он работает, но не закончен).

Вы можете использовать его в файле plugin.xml, поэтому вам нужно создать «немой» плагин, в котором есть только plugin.xml с этими тегами.

Вы можете заглянуть в этот плагин, который просто использует plugin.xml для записи в Info.plist https://github.com/leecrossley/cordova-plugin-transport-security

  • iOS Safari сбой с большой почтой
  • фиксированная позиция сломана на contentEditable Safari ios webkit
  • Угловые ng-click проблемы в Safari с IOS 8.3
  • Создание приложения iOS для HTML5 с интерфейсом UIWebView
  • iOS 7 - есть ли способ отключить функции салфетки назад и вперед в Safari?
  • Как отключить кеш на сафари IOS?
  • Будет ли приложение iOS 6 Smart Banner для телефона показать на сайте, если смотреть на iPad?
  • ios 5 - Скрыть адресную строку сафари
  • Открыть запрос в Safari с настраиваемыми заголовками HTTP
  • Создайте универсальное текстовое поле поиска (google и url) в iOS 7
  • смарт-приложения не работают iOS
  • PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.