[Webkit-unassigned] [Bug 162385] New: iOS 10 breaks Construct 2-made UIWebView Cordova apps

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Sep 22 06:07:25 PDT 2016


https://bugs.webkit.org/show_bug.cgi?id=162385

            Bug ID: 162385
           Summary: iOS 10 breaks Construct 2-made UIWebView Cordova apps
    Classification: Unclassified
           Product: WebKit
           Version: Other
          Hardware: iPhone / iPad
                OS: iOS 10
            Status: NEW
          Severity: Major
          Priority: P2
         Component: HTML DOM
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: ashley at scirra.com
                CC: cdumez at apple.com

iOS 10's UIWebView adds the global "indexedDB" property. In iOS 9, the presence of this was the de-facto way to detect WKWebView since it was missing in UIWebView (e.g. see here: http://stackoverflow.com/a/30495399/177222). Now in iOS 10 all the apps built with UIWebView detect that they are WKWebView due to the addition of "indexedDB". Due to various bugs and changes in the security model of WKWebView, we had to make some fairly significant changes to our engine to support it (see: https://www.scirra.com/blog/ashley/25/hacking-something-useful-out-of-wkwebview). When UIWebView apps detect as WKWebView and apply our hacks, they fail to start up. Therefore there are now many iOS apps made with Construct 2 that no longer work on iOS 10.

I don't even know how we can work around this in the short term since in iOS 10, UIWebView and WKWebView appear to be identical to any kind of Javascript detection.

Ideas that could fix this:
- add an easy way to detect WKWebView from Javascript that will be robust across iOS releases, so we can update our framework then get everybody to re-publish their apps
- remove indexedDB from UIWebView so the de-facto detection that has been used for iOS 9 continues to work (should fix existing apps without any republishing)
- do both but then add indexedDB back to UIWebView for iOS 11, which should be enough time for all the updates and app re-publishing to happen

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20160922/8d473a7d/attachment.html>


More information about the webkit-unassigned mailing list