iphone - 在 iOS (iPhone/iPad/iPod) 上查找所有已注册的 mime 类型/url 方案协议(protocol)(意图过滤器)

标签 iphone ios mobile-safari mime-types url-scheme

我是一名移动网络开发人员,我想测试一些 iOS 设备,看看普通 iOS 设备可以接受哪些 mime 类型和 url 方案。

在 Android 上,我可以安装一个名为 PackageExplorer 的应用程序,它列出了所有 apk 的所有“意图过滤器”并列出了哪些文件 mime 类型(图像/png、文本/html、文本/x-vcard)和应用程序处理的 url 方案(如 geo:、tel:、sms:、mailto:、http://youtube.com)。

如果我能在我的移动网页上从服务器端或浏览器端知道支持/注册了哪些方案和 mime 类型,那就太好了,但如果那不可能,我正在寻找显示或应用程序iOS 查看设备当前支持的所有已安装应用程序的所有已注册文件 mime 类型和 url 方案协议(protocol)。

如何在 iOS 设备上找到所有已注册的方案/mime intent 过滤器?

更新:我不知道它是否完整,但我找到了移动 safari 中使用的 url 方案的官方列表:https://developer.apple.com/library/archive/featuredarticles/iPhoneURLScheme_Reference/Introduction/Introduction.html (仍在寻找 mime 类型等)

最佳答案

此信息本身不可用。但是,您可以构建一个应用程序来尝试具有不同内容类型的不同类型的内容,并查看其显示效果是否良好。

我们遇到过一种情况,Powerpoint 的内容类型未在 Web 服务器上注册,因此 UIWebView 无法显示它。在这些情况下,它将使用特定的错误代码而不是 didFinishLoading 进行响应。当它在服务器上修复后,它也开始在应用程序中工作。

稍微复杂一点的是,测试文件必须由 Web 服务器提供服务,因为基于 fileURL 的文档没有内容类型。 UIWebView 中的 webkit 会自动检测文件类型。

虽然这些信息很可能被证明对您毫无用处,原因很简单:应用程序始终可以注册以打开设备上的某些文件类型。文档交互 Controller 可用于移交此其他应用程序中内容的打开。由于这无限地扩展了可查看文档类型的数量,因此您永远无法获得完整的列表。

所以您真正想要的是 UIWebView 可以显示的这些类型文件的列表,但是您已经有了这个列表,您在问题中引用了 Apple 的 URL。

关于iphone - 在 iOS (iPhone/iPad/iPod) 上查找所有已注册的 mime 类型/url 方案协议(protocol)(意图过滤器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5967629/

相关文章:

javascript - 如何在 React Native 中同时启用多个按钮的触摸?

ios - 尝试使用 UIViewAnimationOptionTransitionFlipFromLeft 展开自定义 Segue

ios - 如何快速更改 UISegmentController 的索引

iphone - 针对 ASP.NET 应用程序优化 ASP.NET 应用程序 IPhone 和 Android 浏览器

JavaScript 无法在 mac OS、iphone 中运行

iphone - 隐藏导航栏标题而不删除它

iphone - 如何将设备添加到 iTunesConnect 并发送 IPA 打包的应用程序?

ios - 显示推送通知弹出窗口时禁用点击主页按钮

ios - iPhone 上的 Safari 无法设置伪元素 :after with content\2714 but it works for\2713 的颜色样式

iphone - UITextField 清除按钮带有占位符错误?