Subject:
iOS 26 WKWebView: Remote Pages Become Unresponsive After Loading Local HTML Files
Description
We're experiencing a critical issue with WKWebView in a React Native 0.64.3 application where remote web pages become completely unresponsive after loading local HTML files in iOS 26. It works well before iOS26.
Environment:
React Native 0.64.3
iOS 26.0
Xcode 26.0.1
Using custom WKWebView implementations in Native modules
Problem Details
App loads local HTML files using loadFileURL:allowingReadAccessToURL:
Later, when loading remote pages via loadRequest:, the remote pages load successfully but become unresponsive to user interactions
This occurs even when using different WKWebView instances
The issue is reproducible 100% of the time once a local file has been loaded
Restarting the app and loading remote pages directly works fine
Code Example:
// Loading local file (works fine)
[self.webView loadFileURL:localFileURL allowingReadAccessToURL:accessURL];
// Later, loading remote page (loads but becomes unresponsive)
NSURLRequest *request = [NSURLRequest requestWithURL:remoteURL];
[self.webView loadRequest:request];
What We've Tried:
Using different WKWebView instances for local vs remote content
Comprehensive cleanup in dealloc (removing all user scripts and message handlers)
Loading blank HTML before switching to remote content
Using shared WKProcessPool (understanding its limitations in iOS 15+)
Ensuring proper decisionHandler management in navigation delegates
Resetting WKWebView configuration settings
Clearing cookies and cache between loads
Using loadFileRequest:allowingReadAccessToURL: instead of loadFileURL:
Key Observations:
The remote page renders correctly and network requests complete
No JavaScript errors in console
The view hierarchy appears normal in Debug View Hierarchy
Touch events seem to be delivered but not processed by the web content
Questions:
Has Apple introduced new security restrictions in iOS 26 that affect the transition from file:// URLs to http:// URLs?
Are there specific WKWebView configuration changes required for React Native applications in iOS 26?
Could this be related to the React Native bridge or JavaScript context persistence?
Any insights or workarounds would be greatly appreciated, as this is blocking our iOS 26 compatibility.
Selecting any option will automatically load the page