0

I use PSPDFKit into a static framework linked to a main project which uses another static framework with a UIWebView.

After the loading of the main project, when I launch the UIWebView and call the request, I have this error:

void SendDelegateMessage(NSInvocation *): delegate (webView:decidePolicyForNavigationAction:request:frame:decisionListener:) failed to return after waiting 10 seconds. main run loop mode: kCFRunLoopDefaultMode

and nothing appends in the webview.

If I doesn't load PSPDFKit into my first framework, the issue doesn't appear and all is ok.

I also found that if I link all the frameworks needed by PSPDFKit but not the PSPDFKit, I have the same bug. I must remove the MessageUI framework to have the right behaviour. But when I include PSPDFKit even without MessageUI, the bug occurs.

Someone have an idea to solve it or find a workaround?

The bug occurs on iOS 7 versions, only on devices not on simulator. And all works fine in iOS 6.

I found this post UIWebView: decidePolicyForNavigationAction? but the resolution is not very clear!

Thanks

Community
  • 1
  • 1
Liberitus
  • 115
  • 1
  • 7

1 Answers1

1

So I solve this bug. I don't know why this bug appeared and I don't know why my fix work.

In fact, I remove old code for the compatibility with iOS 5. This code used the objc/runtime.h library and its goal was to inject into all our UIViewController subclasses if they don't implement shouldAutorotateToInterfaceOrientation:

We used this code to do that

Method shouldAutorotateToInterfaceOrientation = class_getInstanceMethod([self class], @selector(shouldAutorotateToInterfaceOrientation:));
class_addMethod(class, @selector(shouldAutorotateToInterfaceOrientation:), method_getImplementation(shouldAutorotateToInterfaceOrientation), method_getTypeEncoding(shouldAutorotateToInterfaceOrientation));
Liberitus
  • 115
  • 1
  • 7