Cannot navigate to external webpages from internal extension pages

In iOS 18, internal extension pages cannot navigate to external webpages, either via <a> href links or through JS methods such as window.location.replace. Nothing happens when you try to navigate to an external webpage. Only other internal pages can be navigated to. This wasn't an issue on previous versions of iOS.

It would be appreciated if this can be fixed as soon as possible.

Feedback ID: FB14194963

Answered by Systems Engineer in 794446022

Thank you for this report. We are aware of the issue and are preparing a fix. Please keep an eye out for future seeds of iOS 18 and test again when they become available.

My shipping iOS app ("Frax") is experiencing a very similar problem. It uses an internal launcher webpage that pulls in content from an external website, which worked fine on iOS 17.4 but is broken on iOS 18. Sure would appreciate if this could be fixed, or any guidance on how to work around it! I get the following sequence of errors in the console, not sure which are relevant (but none of which occur on previous iOS versions):

Could not create a sandbox extension for '/var/containers/Bundle/Application/[HexGibberish]/Frax.app'

Failed to request restricted opener domains from WebPrivacy

0x138028820 - [pageProxyID=7, webPageID=15, PID=3078, navigationID=3] ProvisionalPageProxy::didFailProvisionalLoadForFrame: frameID=1

0x106609e18 - [pageProxyID=7, webPageID=8, PID=3075] WebPageProxy::didFailProvisionalLoadForFrame: frameID=1, isMainFrame=1, domain=WebKitErrorDomain, code=102, isMainFrame=1, willInternallyHandleFailure=0

Updated list with error: DownloadFailed

Error acquiring assertion: <Error Domain=RBSServiceErrorDomain Code=1 "((target is not running or doesn't have entitlement com.apple.developer.web-browser-engine.rendering AND target is not running or doesn't have entitlement com.apple.developer.web-browser-engine.networking AND target is not running or doesn't have entitlement com.apple.developer.web-browser-engine.webcontent))" UserInfo={NSLocalizedFailureReason=((target is not running or doesn't have entitlement com.apple.developer.web-browser-engine.rendering AND target is not running or doesn't have entitlement com.apple.developer.web-browser-engine.networking AND target is not running or doesn't have entitlement com.apple.developer.web-browser-engine.webcontent))}>

0x138024fc0 - ProcessAssertion::acquireSync Failed to acquire RBS assertion 'XPCConnectionTerminationWatchdog' for process with PID=3078, error: (null)
Accepted Answer

Thank you for this report. We are aware of the issue and are preparing a fix. Please keep an eye out for future seeds of iOS 18 and test again when they become available.

Fixed in beta 4!

Cannot navigate to external webpages from internal extension pages
 
 
Q