【问题标题】:-canOpenUrl OSStatus fout -10814-canOpenUrl OSStatus fout -10814
【发布时间】:2017-11-27 08:41:32
【问题描述】:

我正在尝试从我自己的应用程序中打开一个应用程序,该应用程序也安装在我的 iPhone 上,名为 KIJK。我已将 kijk 字符串添加到 Info.plist 中的数组中,并正在调用 -canOpenUrl 方法,但它总是失败。

我收到以下错误消息: OSStatus fout -10814

现在我想知道,在 Safari 中,可以使用如下组成的链接打开 KIJK 应用程序:kijk://serie/123311 所以我假设kijk 是我需要添加到我的 plist 文件中的查询。

有没有办法找出不是我开发的应用的应用方案?我已经检查了很多答案,但由于新的 iOS 或 iTunes 版本,它们似乎都已经过时了。

<key>LSApplicationQueriesSchemes</key>
<array>
    <string>kijk</string>
    <string>rtlxl</string>
    <string>npo</string>
</array>

【问题讨论】:

    标签: ios iphone url-scheme


    【解决方案1】:

    问:有没有办法找出我没有开发的应用程序的应用程序方案?我已经检查了很多答案,但由于新的 iOS 或 iTunes 版本,它们似乎都已经过时了。

    除非他们声明,否则您无法找出其他应用的 URL 方案。例如,Facebook、Uber 等。单击链接可查看 Facebook 应用程序 URL 方案。 https://developers.facebook.com/docs/ios/ios9 => 将 Facebook 应用列入白名单

    问:现在我想知道,在 Safari 中,可以使用如下组成的链接打开 KIJK 应用程序:kijk://serie/123311 所以我认为 kijk 是我需要的查询添加到我的 plist 文件中。

    如果 KIJK 应用程序具有格式如“kijk://”的 URL 方案,那么它将打开该应用程序。否则,它不会打开应用程序。

    我想您可能已经知道从 iOS 9 开始您需要将您的应用将使用 canOpenURL 查询的方案列入白名单的规则。

    【讨论】:

    • 我知道白名单,这就是我添加到我的 Info.plist 中的 kijk 的意思。但我仍然收到 OSStatus 错误..
    • 我猜问题出在 URL 方案上。你是从开发者那里得到的 KIJK 方案,或者你是如何得到另一个应用程序的方案的?如果 KIJK 应用程序没有向操作系统注册任何类似“kijk://”的方案,那么 canOpenURL 将给出与您所面临的相同的错误。
    • 是的,我认为这也是问题所在,但开发人员没有响应,并且由于来自 Safari 的链接以 kijk:// 开头,我认为它已使用该方案注册,但 -canOpenUrl 每次都失败,所以它是可能是错的..
    • 是的。这是唯一的情况。链接是否正在从 safari 打开应用程序...让我知道?如果是这样的话,他们已经注册了操作系统,但在白名单中有些问题。
    • 我没有看到它在 Safari 中打开。如果在 Safari 中打开了某些东西,它应该向操作系统注册 URL Scheme。请检查 info.plist 中的白名单。定义 LSApplicationQueriesSchemeskijk
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-01
    • 1970-01-01
    • 2019-02-10
    • 2019-02-18
    • 2020-07-24
    • 2019-01-28
    • 1970-01-01
    相关资源
    最近更新 更多