キーボード拡張機能から開こうとしています。私はカスタムキーボードを持っているし、設定からそのキーボードを追加しています。私のカスタムキーボードには、「もっと見る」というボタンが1つあり、このボタンをクリックすると自分のアプリを開きたいと思う。私のアプリケーションをswift 3.0のキーボード拡張から開きます
だから私は、次のコードしようとしている:私たちは迅速Selector("method_name:")
に知っているようにそれが正常に働いている
let context = NSExtensionContext()
context.open(url! as URL, completionHandler: nil)
var responder = self as UIResponder?
while (responder != nil) {
if responder?.responds(to: Selector("openURL:")) == true {
responder?.perform(Selector("openURL:"), with: url)
}
responder = responder!.next
}
が、推奨されません、それは警告を与えているように、代わりに#selector(classname.methodname(_:))
を使用しています。そして私はその警告を解決したい。 Xcodeのが自動的に提案されているようだから私は試してみました:
if responder?.responds(to: #selector(UIApplication.openURL(_:))) == true {
responder?.perform(#selector(UIApplication.openURL(_:)), with: url)
}
も試してみました:
if responder?.responds(to: #selector(NSExtensionContext.open(_:))) == true {
responder?.perform(#selector(NSExtensionContext.open(_:)), with: url)
}
は私が可能な方法、ない運が他人をも試してみました。誰かがする方法を知っていれば、私に知らせてください。
私は、このリンク、フリオ・バイロンの答え呼ば:コードに続いて
openURL not work in Action Extension
は解決策を見つけました? – Danny182
まだ.... @ Danny182 – VRAwesome
いくつかのアプリはそれを行います。非常に奇妙な@VRA素晴らしい – Danny182