gpt4 book ai didi

ios - 从iOS Safari共享扩展打开主应用

转载 作者:行者123 更新时间:2023-12-01 17:28:57 25 4
gpt4 key购买 nike

我有一个Safari共享扩展程序,我想从该扩展程序中打开主应用程序。系统会向用户显示警报,让他们可以选择打开应用。

func openAppHandler() {
self.extensionContext?.completeRequest(returningItems: []) { (success) in
if let url = URL(string: "myapp://...") {
self.extensionContext?.open(url, completionHandler: nil)
}
}
}

在调用 didSelectPost()方法之后,将出现警报,并且您可以看到,该警报发生在扩展的后台优先级完成块中。 open方法在其文档中表示:“在iOS 8中,只有Today扩展点(用于创建窗口小部件)支持此方法。”我猜仍然是Safari Share Extension不支持它的情况。

有谁知道通过共享扩展程序打开我的主应用程序的方法吗?

最佳答案

我找到了解决方案here。我不确定苹果在技术上是否可以,但是它可以按我的需要工作。

@objc func openURL(_ url: URL) {
return
}

func openContainerApp() {
var responder: UIResponder? = self as UIResponder
let selector = #selector(MyViewController.openURL(_:))

while responder != nil {
if responder!.responds(to: selector) && responder != self {
responder!.perform(selector, with: URL(string: "myapp://url")!)
return
}
responder = responder?.next
}
}

关于ios - 从iOS Safari共享扩展打开主应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41449602/

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