[DX-2615] fix: android custom tabs dismiss callback #63
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.
Summary
Context
HandleOnLoginPKCEDismissed
is called.i. Log into Passport in Chrome Custom Tabs. On success, deeplink the user back into the game.
ii. After deeplink is called, complete the PKCE login flow. On success, the PKCE login is complete.
Issue 1
Currently,
HandleOnLoginPKCEDismissed
checks if the SDK is currently trying to connect (usingIPS_CONNECTING
) and if it is, it will nullifyPKCEResponseDelegate
. This is not the right way to check, asIPS_CONNECTING
is set when PKCE flow starts (point 2i), so if Custom Tabs is dismissed after the second part of PKCE login flow starts (point 2ii) but before it finishes, thePKCEResponseDelegate
will no longer be there to call once PKCE login completes.To fix this issue,
IPS_PKCE_COMPLETING
is added to indicate when the second part of the PKCE flow starts. If Chrome Custom Tabs is dismissed before the second part, it may nullify thePKCEResponseDelegate
.Issue 2
IPS_CONNECTED
is set once the second part of the PKCE flow starts (2ii). This should not be set untilOnConnectPKCEResponse
is successful.Customer Impact
Android PKCE flow may not work on some Android devices.
Other things to consider:
feat:
,fix:
,chore:
,docs:
,refactor:
ortest:
.N/A
Samp e blueprints are updated with new SDK changesN/A
Updated public documentation with new SDK changes (Immutable X and Immutable zkEVM)N/A
Replied to GitHub issues