【问题标题】:Phonegap plugins delayed initializationPhonegap 插件延迟初始化
【发布时间】:2014-04-13 12:35:50
【问题描述】:

我正在为 iPhone/iPad 应用程序使用 Phonegap/Cordova 3.4.0。我使用媒体和对话框插件。它们在 iPad 上工作得很好,但在 iPhone 上,当我按下相应的按钮时,声音不会播放,通知也不会出现。但是,如果我双击主页按钮(或者如果我最小化应用程序并再次最大化它),所有声音都会同时开始播放,并且我试图触发的通知也会显示出来。

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

最好的问候

【问题讨论】:

  • 哦,它也在 iPad 上。这一定是我当时改变的东西。

标签: ios iphone cordova plugins delayed-execution


【解决方案1】:

我找到了罪魁祸首。我添加了一些代码,以便可以在 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];

一切正常!

【讨论】:

    猜你喜欢
    • 2020-05-10
    • 1970-01-01
    • 2011-11-17
    • 1970-01-01
    • 2020-10-08
    • 2017-11-11
    • 1970-01-01
    • 1970-01-01
    • 2017-03-05
    相关资源
    最近更新 更多