2010-08-25 3 views
0

J'ai un WebView qui fonctionne très bien sauf dans un cas. Quand il charge une page avec un fichier SWF qui charge un autre fichier SWF, le délégué de la charge se "The operation couldn’t be completed. (NSURLErrorDomain error -999.)"NSURLErrorDomain -999 breaks Flash

D'après ce que je comprends, cette erreur se produit lorsqu'une deuxième demande est faite avant le premier a terminé (1, 2, 3, 4) . Je ne le fais pas expressément, mais le SWF fait en effet une autre demande.

Ignorer l'erreur n'est pas une solution - je l'ignore essentiellement comme c'est le cas, et la page entière se charge bien, sauf pour le contenu Flash. Que puis-je faire pour que Flash fonctionne?

+0

Vous savez que l'iOS ne prend pas en charge Flash correctement? – Pripyat

+0

Ceci est Cocoa, pas iOS. –

Répondre

0

Je ne suis pas sûr si l'implémentation de l'appel délégué est identique à l'ignorer; WebKit pourrait essayer de gérer l'erreur sous le capot et causer des problèmes.

Dans mon application WebKit/Flash, j'ai dans mon WebFrameLoadDelegate:

- (void) webView:(WebView*)sender 
     didFailProvisionalLoadWithError:(NSError*)error 
     forFrame:(WebFrame*)frame 
{ 
    // If the user clicks a link while something is loading this error will 
    // be reported. It can be safely ignored (NSURLErrorCancelled -999) 
    if ([error code] == NSURLErrorCancelled) return; 

    // Real error handling here... 
} 

Et tout fonctionne bien. Si j'enlève cela, je commence à avoir des échecs bizarres et même des plantages quand le contenu Flash est affiché.