Group Group Group Group Group Group Group Group Group

Open My application from my keyboard extension in swift 3.0


I am trying to open from my keyboard extension. I am having custom keyboard and I have add that keyboard from setting. On my custom keyboard there is one button “Show More”, and I want to open my app on this button click.

So I have tried following code :

let context = NSExtensionContext()! 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

It is working successfully, but as we know in swift Selector(“method_name:”) is deprecated and use #selector(classname.methodname(_:)) instead so it is giving warning. And I want to solve that warning. So I have tried as Xcode automatically suggested :

 if responder?.responds(to: #selector(UIApplication.openURL(_:))) == true {

      responder?.perform(#selector(UIApplication.openURL(_:)), with: url)

Also tried :

if responder?.responds(to: #selector( == true {

    responder?.perform(#selector(, with: url)

I have also tried others possible ways, but no luck. If anyone know how to do, please let me know.

I referred this link, Julio Bailon’s answer : openURL not work in Action Extension



you can use this code:

let selector = sel_registerName(“openURL:”)
var responder = self as UIResponder?
while let r = responder, !r.responds(to: selector) {
responder =
_ = responder?.perform(selector, with: URL(string: “appurl://”))

I hope it can help you all !!!