Abrir mi aplicación desde mi extensión de teclado en swift 3.0

Estoy intentando abrir desde mi extensión de teclado. Tengo un teclado personalizado y agregué ese teclado desde la configuración. En mi teclado personalizado hay un botón "Mostrar más", y quiero abrir mi aplicación haciendo clic en este botón.

Así que he intentado el siguiente código:

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
 }

Está funcionando con éxito, pero como sabemos de manera rápidaSelector("method_name:") está en desuso y uso#selector(classname.methodname(_:)) en su lugar, entonces está dando advertencia. Y quiero resolver esa advertencia. Así que lo intenté como Xcode sugirió automáticamente:

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

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

También probé:

 if responder?.responds(to: #selector(NSExtensionContext.open(_:))) == true {

      responder?.perform(#selector(NSExtensionContext.open(_:)), with: url)
 }

También he probado otras formas posibles, pero no tuve suerte. Si alguien sabe cómo hacerlo, hágamelo saber.

Remití este enlace, la respuesta de Julio Bailón:

openURL no funciona en Action Extension

Respuestas a la pregunta(2)

Su respuesta a la pregunta