1
我希望用戶能夠單擊Safari中的GPX文件鏈接,並將它們導入到我的應用程序中。在我的iPhone應用程序中從Safari中打開GPX文件
我有這樣的工作 - 有一些網站我可以去,點擊一個GPX文件,它會給我選擇在我的應用程序中打開。
但是,某些GPX文件(包括我在本地計算機上託管的簡單GPX文件)不會以這種方式打開。我註冊GPX文件類型時可能會做錯什麼?
這裏是我的plist代碼:
那肯定需要更新<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>GPSXML File</string>
<key>LSHandlerRank</key>
<string>Owner</string>
<key>CFBundleTypeIconFile</key>
<string>gaia-icon.png</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
<key>LSItemContentTypes</key>
<array>
<string>public.utf8-plain-text</string>
<string>com.apple.dt.document.gpx</string>
<string>com.trailbehind.gpx</string>
</array>
</dict>
</array>
<key>UTExportedTypeDeclarations</key>
<array>
<dict>
<key>UTTypeIdentifier</key>
<string>com.trailbehind.gpx</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.mime-type</key>
<string>text/plain; charset=UTF-8</string>
<key>public.filename-extension</key>
<string>gpx</string>
</dict>
<key>UTTypeConformsTo</key>
<array>
<string>public.content</string>
<string>public.item</string>
<string>public.data</string>
<string>public.xml</string>
<string>public.text</string>
</array>
<key>UTTypeDescription</key>
<string>GPSXML</string>
</dict>
</array>
<key>UIFileSharingEnabled</key>
<true/>
我懷疑工作和不工作的網站之間的區別是它們提供的文件的MIME類型。檢索包括來自兩種站點的頭部的整個HTTP響應,並比較應該揭示發生了什麼的「Content-Type」頭部。我從第一個HTTP原則回答這個問題,而不是從iOS應用程序的URL處理方面的專業知識來回答這個問題,因此我儘可能地去解決這個問題。 – Perry 2012-05-06 15:43:10