Details
-
Bug
-
Resolution: Fixed
-
P1: Critical
-
6.8.0
-
Xcode 15.4; iOS Simulator 17.5
-
-
8
-
c81f80581 (dev), 4d6a96bb3 (6.8)
-
Foundation Sprint 121
Description
The attached project registers itself as a URL handler for a custom scheme, "foo://", as documented at https://doc.qt.io/qt-6/qdesktopservices.html#ios-and-macos
In Qt 6.8.0, this URL handler receives URLs opened by the same app, as expected. However, it no longer receives URLs opened by other apps. This prevents QOAuthUriSchemeReplyHandler from completing the authentication.
Steps to reproduce
- Build and run the attached project on iOS
- Wait 2 seconds until QTimer invokes QDesktopServices::openUrl(QUrl("foo://blub/meh"))
- Launch Safari on the same device, and enter "foo://bar/baz" into the address bar
Outcomes
- (Step #2) The app updates the displayed URL to "foo://blub/meh" (Expected)
- (Step #3)(Qt 6.5.7) The app updates the displayed URL to "foo://bar/baz" (Expected)
- (Step #3)(Qt 6.8.0) Nothing happens (Not Expected)
Attachments
For Gerrit Dashboard: QTBUG-131741 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
608913,4 | Add iOS UIScene related URL handling | dev | qt/qtbase | Status: MERGED | +2 | 0 |
608914,1 | Remove unneeded iOS URL handling code | dev | qt/qtbase | Status: ABANDONED | 0 | 0 |
609313,2 | Add iOS UIScene related URL handling | 6.8 | qt/qtbase | Status: MERGED | +2 | 0 |