Регистрация файла GPX (или XML )для открытия в приложении iOS

У меня проблемы с открытием файлов GPX в моем приложении для iOS. Я зарегистрировал расширение, и некоторые файлы открываются правильно, то есть, когда я нажимаю на ссылку на файл GPX в Safari, появляется подсказка с вопросом, какое приложение я хочу использовать для открытия файла. Затем я выбираю свое приложение, и файл обрабатывается, как и ожидалось. Для некоторых веб-сайтов в Safari и для всех файлов из вложений электронной почты подсказка и выбор приложения не отображаются, а браузер/приложение электронной почты отображает содержимое файла в виде текста.

Я подозреваю, что проблема связана с настройками info.plist или, возможно, с приложениями Safari и электронной почты. Если вы правильно открываете файлы XML или GPX в своих приложениях для iOS, публикуете ли вы свои настройки CFBundleDocumentTypes и UTExportedTypeDeclarations из info.plist?

Любые мысли приветствуются. Вот соответствующий раздел из моего info.plist. Я пытался добавлять и удалять некоторые необязательные теги, это последние, но не самые полные.

<key>CFBundleDocumentTypes</key>
<array>
    <dict>
        <key>CFBundleTypeIconFiles</key>
        <array>
            <string>Icon.png</string>
            <string>Icon@2x.png</string>
        </array>
        <key>CFBundleTypeName</key>
        <string>GPS eXchange Format</string>
        <key>CFBundleTypeRole</key>
        <string>Viewer</string>
        <key>LSHandlerRank</key>
        <string>Owner</string>
        <key>LSItemContentTypes</key>
        <array>
            <string>org.elsners.Indicium.gpx</string>
        </array>
    </dict>
</array>
<key>UTExportedTypeDeclarations</key>
<array>
    <dict>
        <key>UTTypeConformsTo</key>
        <array>
            <string>public.xml</string>
        </array>
        <key>UTTypeDescription</key>
        <string>GPS eXchange Format</string>
        <key>UTTypeIdentifier</key>
        <string>org.elsners.Indicium.gpx</string>
        <key>UTTypeTagSpecification</key>
        <dict>
            <key>public.filename-extension</key>
            <array>
                <string>GPX</string>
                <string>gpx</string>
            </array>
        </dict>
    </dict>
</array>
19
задан MirekE 7 May 2012 в 15:00
поделиться