Fix crash when the bundle ID contains characters not allowed in URL schemes #786
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
📋 Changes
The SDK uses the URLComponents builder to build the callback URL, with the bundle ID as the scheme. However, this builder throws an exception when the scheme contains invalid characters.
This issue was raised by a customer that had a bundle ID starting with a number. According to the BNF syntax for URI schemes, a scheme cannot start with a number.
This PR makes sure to return an error instead of crashing if the scheme contains any invalid characters.
📎 References
Fixes #785
🎯 Testing
The changes were tested manually using a simulator running iOS 17.0 with Xcode 14.3 (14E222b).