-
Notifications
You must be signed in to change notification settings - Fork 662
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Better handle process death for all confirmation flow cases in DefaultConfirmationHandler
#9754
Better handle process death for all confirmation flow cases in DefaultConfirmationHandler
#9754
Conversation
a14e30e
to
4c534c7
Compare
Diffuse output:
APK
|
…ltConfirmationHandler`
4c534c7
to
df88d90
Compare
@@ -142,6 +145,7 @@ internal class DefaultConfirmationHandler( | |||
when (val action = mediator.action(confirmationOption, intent)) { | |||
is ConfirmationMediator.Action.Launch -> { | |||
storeIsAwaitingForResult( | |||
key = mediator.key, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I imagine we never will have a case like this but if we ever decide that the same definition can be looped through multiple times in a confirmation flow, this will break. Other option to use UUID instead.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Feels like a fine trade off for now 👍
@@ -142,6 +145,7 @@ internal class DefaultConfirmationHandler( | |||
when (val action = mediator.action(confirmationOption, intent)) { | |||
is ConfirmationMediator.Action.Launch -> { | |||
storeIsAwaitingForResult( | |||
key = mediator.key, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Feels like a fine trade off for now 👍
…ltConfirmationHandler` (#9754)
* Initial camera implementation # Conflicts: # connect-example/src/main/java/com/stripe/android/connect/example/ui/features/payouts/PayoutsExampleActivity.kt # connect/src/main/java/com/stripe/android/connect/PayoutsView.kt # Conflicts: # connect/src/main/java/com/stripe/android/connect/PayoutsView.kt # connect/src/main/java/com/stripe/android/connect/webview/StripeConnectWebViewClient.kt # Conflicts: # connect-example/src/main/java/com/stripe/android/connect/example/ui/features/payouts/PayoutsExampleActivity.kt # connect/src/main/java/com/stripe/android/connect/EmbeddedComponentManager.kt # connect/src/main/java/com/stripe/android/connect/PayoutsView.kt * Update request code * Update example activity * Refactor permission, handle within manager * Fix leftover merge conflicts # Conflicts: # connect/src/main/java/com/stripe/android/connect/webview/StripeConnectWebViewContainer.kt * WIP * Fix merge * Fix build issues * fix activity * Fix suspend function * refactor with activity oncreate * Show promo badge in bank form (#9734) * Show promo badge in bank form * Address code review feedback Fix layout issue with super-long bank name and validate with screenshot test. * Add Embedded Appearance params to AppearanceBottomSheetDialogFragment (#9727) * Add Embedded Appearance params to AppearanceBottomSheetDialogFragment * [MOBILESDK-2480]update text style for bacs secondary button type (#9745) * update text style for bacs secondary button type * screenshots for screenshot tests * Apply suggestions from code review Capitalize comment and add period Co-authored-by: Bella Koch <160939932+amk-stripe@users.noreply.github.com> * crypto payment method (#9753) * Better handle process death for all confirmation flow cases in `DefaultConfirmationHandler` (#9754) * Fix lints, remove unneeded cancellation function * Add tests * Fix tests * Add/fix logging * Fix lint from log line * Fix main thread * Update connect/src/main/java/com/stripe/android/connect/webview/StripeConnectWebViewContainer.kt Co-authored-by: lng-stripe <91862945+lng-stripe@users.noreply.github.com> * Update connect/src/main/java/com/stripe/android/connect/EmbeddedComponentManager.kt Co-authored-by: lng-stripe <91862945+lng-stripe@users.noreply.github.com> * unsupported behavior to log warning * Fix docstrings * Update crashing behavior for camera permission request * Move functions around for clarity * Update tests * Update and fix tests * Fix detekt lints * Fix main activity * Remove unnecessary fragment, move logger out of constructor * Clean up lib restriction * Remove unnecessary unconfined test dispatcher * Update api * Lint fixes --------- Co-authored-by: Till Hellmund <tillh@stripe.com> Co-authored-by: tjclawson-stripe <163896025+tjclawson-stripe@users.noreply.github.com> Co-authored-by: Tian Zhao <tianzhao@stripe.com> Co-authored-by: Bella Koch <160939932+amk-stripe@users.noreply.github.com> Co-authored-by: ericzhang-stripe <94195995+ericzhang-stripe@users.noreply.github.com> Co-authored-by: Samer Alabi <141707240+samer-stripe@users.noreply.github.com> Co-authored-by: lng-stripe <91862945+lng-stripe@users.noreply.github.com>
Summary
Better handle process death for all confirmation flow cases in
DefaultConfirmationHandler
.Motivation
Our current process death handling works fine when a result is received in process but not great when a result is not received in process and results in a next step action
Testing