gpt4 book ai didi

ios - 允许从第三方应用程序中的链接打开我的应用程序

转载 作者:行者123 更新时间:2023-11-29 00:21:44 25 4
gpt4 key购买 nike

我目前正在使用自定义 URL 方案以允许用户从自定义链接 (foobar://resource/42) 访问我的应用程序(例如,FoobarApp) .

我像这样设置了方案:

<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLName</key>
<string>com.acme.foobarapp</string>
<key>CFBundleURLSchemes</key>
<array>
<string>foobar</string>
</array>
</dict>
</array>

当用户单击 Safari 中的链接时,此方法效果很好。

现在我希望他们能够点击第三方应用程序(在我的例子中为 Trello)中的所述链接来打开我的应用程序。

这是行不通的,因为系统(如果我没记错的话,从 iOS 9 开始)现在要求应用将他们想要查询的 URL 方案列入白名单(使用 Info.plist 中的 LSApplicationQueriesSchemes)。

(这是当我单击第三方应用程序中的链接时在日志中收到的消息:

iPad Trello(UIKit)[2368] : -canOpenURL: failed for URL: "foobar://resource/42" - error: "This app is not allowed to query for scheme foobar"

)

期望第三方应用将我的(企业)应用的方案添加到其 LSApplicationQueriesSchemes 列表中是不合理的。他们是否可以选择“绕过”这种保护?一种告诉系统“没关系,Trello 可以打开我的应用程序”的方式?

摘要

  • 自定义应用链接foobar://可在 Safari 中使用
  • 它们无法在第三方应用中运行(没有任何反应,请参阅几行日志)
  • 如何将第三方应用列入白名单,以便他们可以打开我的应用?

最佳答案

应用程序必须告诉 ios 它想要查询 url 方案。它必须在编译时在其 info plist 中声明这一点!

在苹果允许的 iPhone 上没有办法解决这个问题。

当然,当你越狱手机时,一切都可以完成,但是......这也不是一个有效的假设;)


解决方法可能是通过 HTTP 链接到网站并让用户从那里打开应用程序。

关于ios - 允许从第三方应用程序中的链接打开我的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44047254/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com