Phonegap插件延迟初始化

时间:2014-04-13 12:35:50

标签: ios iphone cordova plugins delayed-execution

我正在使用Phonegap / Cordova 3.4.0 for iPhone / iPad应用程序。我使用Media和Dialogs插件。它们可以在iPad上正常工作,但在iPhone上,声音无法播放,当我按下相应的按钮时,通知不会出现。但是,如果我双击主页按钮(或者如果我最小化应用程序并再次最大化),则所有声音同时开始播放,并且我尝试触发的通知也会显示。

这是一个非常奇怪的延迟响应,我没有发现这个问题。有人可以帮忙吗?

祝你好运

1 个答案:

答案 0 :(得分:0)

我找到了罪魁祸首。我添加了一些代码,以便我可以在Safari中打开外部链接。所以这是MainViewController.m中的代码:

// BEGIN - Custom code
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {

    NSURL *requestURL =[ request URL ];
    if ( ( [ [ requestURL scheme ] isEqualToString: @"http" ] || [ [ requestURL scheme ] isEqualToString: @"https" ] || [ [ requestURL scheme ] isEqualToString: @"mailto" ]) )
    {
        [[UIApplication sharedApplication] openURL: requestURL];
        return NO;
    }

    return YES;

}
// END - Custom code

而不是最后的return YES;,我不得不将其替换为:

return [super webView:webView shouldStartLoadWithRequest:request navigationType:navigationType];

一切正常!