Phonegap handleOpenURL no se ha llamado al inicio de la aplicación (iOS)

Obtención de un post de alerta cuando la aplicación está abierta en segundo plano. Cuando cierro la aplicación desde el background cuando ejecuto la aplicación, no me da un post de alerta. handleOpenURL no puede invocar JavaScript cuando la aplicación se inicia por primera vez. Los siguientes son códigos

Código didFinishLaunchingWithOptions

NSURL* url = [launchOptions objectForKey:UIApplicationLaunchOptionsURLKey]; NSString* invokeString = nil; if (url) { invokeString = [url absoluteString]; NSLog(@"iPaperReeder launchOptions = %@", url); } self.viewController.invokeString = invokeString; 

AppDelgate.m

 if (!url) { return NO; } NSString* jsString = [NSString stringWithFormat:@"window.setTimeout(function(){ handleOpenURL(\"%@\"); }, 1)", url]; [self.viewController.webView stringByEvaluatingJavaScriptFromString:jsString]; // all plugins will get the notification, and their handlers will be called [[NSNotificationCenter defaultCenter] postNotification:[NSNotification notificationWithName:CDVPluginHandleOpenURLNotification object:url]]; return YES; 

Debería salir a esta function javascript:

  function handleOpenURL(url) { alert('invoke: ' + url); } 

Por favor, ayúdame.

Creo que no estás haciendo bien, sigue mi código de la siguiente manera:

Puede solucionar este problema fácilmente.

En el file "CDVHandleOpenURL.m" debe cambiar el código de la siguiente manera:

 NSString* jsString = [NSString stringWithFormat:@"document.addEventListener('deviceready',function(){if (typeof handleOpenURL === 'function') { handleOpenURL(\"%@\");}});", url]; 

A

 NSString* jsString = [NSString stringWithFormat:@"if (typeof handleOpenURL === 'function') { handleOpenURL(\"%@\");} else { window._savedOpenURL = \"%@\"; }", url, url]; 

esto funcionará perfectamente.

La mejor de las suertes