Document Interaction not always triggered from Safari
-
12-10-2019 - |
Question
Through Document Interaction, my iOS app registers itself as an editor of .sgf and .ugi files. So I can open such files from - let's say - attachements in Mail.
However, when trying the same from Safari, I get inconsistent behavior. I try to open .sgf documents that are available via HTTP into my App.
Some http links trigger the gray box with "Open in..." button... Good.
http://gtl.xmp.net/reviews/data/82/8201-DavidB-mukai-jettero.sgf
Other links open as a text file in Safari... Unwanted.
http://learngo.world-go.org/golibrary/samplelessons/studygroup30k/2004-06-11_20-30k.sgf
Is there a way to get the "open in..." button on all?
Solution
After some research I got most of the answer from this page:
https://developer.mozilla.org/en/Properly_Configuring_Server_MIME_Types
And this web tool:
http://www.rexswain.com/httpview.html
SafariMobile looks at the MIME-type that is returned by the web server to determine what to do with the link (view within Safari or offer 'Open In...'.
Supported types like 'text/plain', 'text/html', 'image/gif' are all displayed within Safari. Whereas an unsupported type like 'application/zip' will trigger the 'Open in...' interface.
But Safari will even try to display a link of the type 'application/octet-stream', which is the mime-type typically used for unknown binary formats. I suppose Apple did this to overcome web servers that fail to provide the proper mime-type.
Supplying the type along within the HTML code is ignored by Safari.
<a href='file.sgf' type='application/x-go-sgf'>
The only (I think) solution is to change the configuration of the web server.