【问题标题】:UIWebView Stops Entire App When Double Tap双击时 UIWebView 停止整个应用程序
【发布时间】:2014-03-01 17:48:56
【问题描述】:

如果用户双击 UIWebView 中的任何链接,我的 iOS 应用程序会停止响应。发生这种情况时,我在日志中没有输出,它只是停止响应。我不确定如何调试,或者从这个问题中获取更多信息。有人对我如何进行有任何建议吗?我隐约记得这是我创建的早期应用程序中 UIWebView 内的一个无限循环故障,但是我在网上或最新的 XCode 中找不到任何记录。

如果有人对我可以从哪里提取数据以帮助识别问题提出建议,我将不胜感激。到目前为止,我已经监控了 iPhone 上的 NSLog 输出和崩溃日志。

【问题讨论】:

    标签: ios iphone objective-c uiwebview


    【解决方案1】:

    UIWebView 执行的所有 JavaScript 和操作都发生在主线程上;这可能是导致挂起行为的原因。

    我会为 UIWebView 的委托分配一个类并实现委托的 'webView:shouldStartLoadWithRequest:navigationType:' 方法。 UIWebView 发出的每个请求都会调用此方法。在其中记录可以显示 Web 应用程序正在执行哪些 AJAX 调用或其他资源调用。

    【讨论】:

    【解决方案2】:

    尝试查看我的答案。它可能会帮助你。

    <html>
        <body>
            <a href=\"http://www.google.com\" target=\"_blank\" title=\"Google Link\" 
                name=\"Google\">http://www.google.com</a>
        </body>
    </html>
    

    我在 html 字符串中添加了链接“www.google.com”。现在,当用户点击该链接时,它将打开 iPhone 默认浏览器。

    不要忘记在代码中添加 UIWebview 委托方法。

    【讨论】:

    • 这无济于事,因为应用程序的一部分需要嵌入式 UIWebView... 我需要知道如何解决我遇到的问题,而不是通过将用户发送到另一个应用程序来规避它。无论如何,谢谢!
    猜你喜欢
    • 2013-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多