点击 INUIHostedViewControlling
View Controller 后,有没有办法向应用程序发送一些参数/URL?
例如在 Widget 扩展中有:
self.extensionContext?.open(cardURL, completionHandler: nil)
最佳答案
似乎某些扩展类型在使用 extensionContext 时受到更多限制。我在键盘扩展上遇到了同样的问题。这可能有点 hacky,但下面的代码对我有用。
func openUrl(url: URL?) {
let selector = sel_registerName("openURL:")
var responder = self as UIResponder?
while let r = responder, !r.responds(to: selector) {
responder = r.next
}
_ = responder?.perform(selector, with: url)
}
func canOpenUrl(url: URL?) -> Bool {
let selector = sel_registerName("canOpenURL:")
var responder = self as UIResponder?
while let r = responder, !r.responds(to: selector) {
responder = r.next
}
return (responder!.perform(selector, with: url) != nil)
}
关于ios - 使用 IntentsUI 扩展中的 URL 打开应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53978183/