0

The code below is used display an AWS Android sign-in dialog that includes an option to allow users to register ("Create New Account") within an Android app (similar for iPhone too). The validation is poor.

Users are displayed a generic failure dialog and returned to the login page with an error returned from AWS (often too technical and limited to the first error on the form). The error dialog only validates one field at a time. Users are forced back to the sign-in page and must re-enter all their information again.

Any single mistake or validation error will be rejected and the user returned to the sign-in page and required to re-enter all their information again. Tedious and poor UX design.

Is there a way to improve or tap into the UX and still use the AWS? Anyone know of Amazon plans to improve this? The long fix is to not use the classes and write all the login and account creation from scratch, but I'd rather focus on the core app features than invest time in login dialogs, for now at least. Some users have simply uninstalled the app when trying to create an account because it is too tedious.

private void showSignIn() {
    AWSMobileClient.getInstance().initialize(this, new AWSStartupHandler() {
        @Override
        public void onComplete(final AWSStartupResult awsStartupResult) {
            Log.d(TAG, "AWSStartupHandler.onComplete()" + awsStartupResult);
            AuthUIConfiguration config =
                    new AuthUIConfiguration.Builder()
                            .userPools(true)  // true? show the Email and Password UI
                            .signInButton(FacebookButton.class) // Show Facebook button
                            .signInButton(GoogleButton.class) // Show Google button
                            .logoResId(R.drawable.ic_modlist_aws_signin_icon)
                            .backgroundColor(Color.parseColor("#7FA7BC"))
                            .isBackgroundColorFullScreen(false) // Full screen backgroundColor the backgroundColor full screenff
                            .fontFamily("sans-serif-light") // Apply sans-serif-light as the global font
                            .canCancel(true)
                            .build();

            SignInUI signinUI = (SignInUI) AWSMobileClient.getInstance().getClient(AuthenticatorActivity.this, SignInUI.class);
            signinUI.login(AuthenticatorActivity.this, MainActivity.class).authUIConfiguration(config).execute();
        }
    }).execute();
}

The UX looks like this: https://docs.aws.amazon.com/aws-mobile/latest/developerguide/images/tutorial-notes-authentication-anim.gif From AWS documentation

Example Create New Account Feedback

4

1 回答 1

0

亚马逊在 2.7.x、Android SDK Auth UI、com.amazonaws:aws-android-sdk-auth-ui:2.7 中或附近修复了该问题并改进了验证

欲了解更多信息:https ://github.com/aws-amplify/aws-sdk-android

于 2018-11-08T20:03:42.577 回答