iOS 8.3 Share Extension – Lanzamiento de esquemas de URL

ya que iOS 8.3 actualizó mi extensión de resources compartidos (que llama a mi aplicación principal utilizando los Esquemas de URL) dejó de funcionar. Entonces descubrí que el enfoque de UIWebView que tenía para lanzar mi aplicación ya no funciona. También probé el enfoque que Apple recomienda, usando NSExtensionContext, y aún no hay resultados. ¿Alguna idea sobre esto? Mi código sigue:

UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 0, 0)]; [self.view addSubview: webView]; NSString *urlString = "com.myappscheme://shareextension"; NSString * content = [NSString stringWithFormat : @"<head><meta http-equiv='refresh' content='0; URL=%@'></head>", urlString]; [webView loadHTMLString:content baseURL:nil]; 

y

 [self.extensionContext openURL:[NSURL URLWithString:urlString] completionHandler:^(BOOL success) { NSLog(@"fun=%s after completion. success=%d", __func__, success); }]; 

Intento ejecutar ambos bloques de código en el método didSelectPost desde mi controller SLComposeServiceViewController, que fue donde funcionó bien anteriormente, antes de actualizar mi dispositivo a iOS 8.3

extensionContext.openURL está destinado solo a las extensiones de hoy. Apple no proporciona una API pública para lograr esto, y parece que en iOS 8.3, Apple ha bloqueado algunas de las soluciones. Esto parece por layout. Si cree que se necesita esta funcionalidad, abra un informe de request / error de mejora.

Puedes probar con este código, pero funciona, pero no sé si Apple lo aceptaría.

 UIResponder* responder = self; while ((responder = [responder nextResponder]) != nil) { NSLog(@"responder = %@", responder); if ([responder respondsToSelector:@selector(openURL:)] == YES) { [responder performSelector:@selector(openURL:) withObject:[NSURL URLWithString:@""]]; } }