我无法在我的 iOS 应用程序中打开 GPX 文件。我注册了扩展名,一些文件正确打开,也就是说,当我在 Safari 中点击指向 GPX 文件的链接时,它会显示一个提示,询问我要使用哪个应用程序来打开文件。然后我选择我的应用程序并按预期处理文件。对于 Safari 中的某些网站以及电子邮件附件中的所有文件,不显示提示和应用程序选择,并且浏览器/电子邮件应用程序将文件内容显示为文本。
我怀疑这是 info.plist 设置的问题,或者可能是 Safari 和电子邮件应用程序的问题。如果您在 ios 应用程序中正确打开 XML 或 GPX 文件,您会从 info.plist 中发布您的 CFBundleDocumentTypes 和 UTExportedTypeDeclarations 设置吗?
欢迎任何想法。这是我的 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>