Listen to auth events
AWS Cognito Auth Plugin sends important events through Amplify Hub.
1Amplify.Hub.subscribe(HubChannel.AUTH,2 hubEvent -> {3 if (hubEvent.getName().equals(InitializationStatus.SUCCEEDED.toString())) {4 Log.i("AuthQuickstart", "Auth successfully initialized");5 } else if (hubEvent.getName().equals(InitializationStatus.FAILED.toString())){6 Log.i("AuthQuickstart", "Auth failed to succeed");7 } else {8 switch (AuthChannelEventName.valueOf(hubEvent.getName())) {9 case SIGNED_IN:10 Log.i("AuthQuickstart", "Auth just became signed in.");11 break;12 case SIGNED_OUT:13 Log.i("AuthQuickstart", "Auth just became signed out.");14 break;15 case SESSION_EXPIRED:16 Log.i("AuthQuickstart", "Auth session just expired.");17 break;18 case USER_DELETED:19 Log.i("AuthQuickstart", "User has been deleted.");20 break;21 default:22 Log.w("AuthQuickstart", "Unhandled Auth Event: " + AuthChannelEventName.valueOf(hubEvent.getName()));23 break;24 }25 }26 }27);
1Amplify.Hub.subscribe(HubChannel.AUTH) { event ->2 when (event.name) {3 InitializationStatus.SUCCEEDED.toString() ->4 Log.i("AuthQuickstart", "Auth successfully initialized")5 InitializationStatus.FAILED.toString() ->6 Log.i("AuthQuickstart", "Auth failed to succeed")7 else -> when (AuthChannelEventName.valueOf(event.name)) {8 AuthChannelEventName.SIGNED_IN ->9 Log.i("AuthQuickstart", "Auth just became signed in")10 AuthChannelEventName.SIGNED_OUT ->11 Log.i("AuthQuickstart", "Auth just became signed out")12 AuthChannelEventName.SESSION_EXPIRED ->13 Log.i("AuthQuickstart", "Auth session just expired")14 AuthChannelEventName.USER_DELETED ->15 Log.i("AuthQuickstart", "User has been deleted")16 else ->17 Log.w("AuthQuickstart", "Unhandled Auth Event: ${event.name}")18 }19 }20}
1Amplify.Hub.subscribe(HubChannel.AUTH).collect {2 when (it.name) {3 InitializationStatus.SUCCEEDED.toString() ->4 Log.i("AuthQuickstart", "Auth successfully initialized")5 InitializationStatus.FAILED.toString() ->6 Log.i("AuthQuickstart", "Auth failed to succeed")7 else -> when (AuthChannelEventName.valueOf(it.name)) {8 AuthChannelEventName.SIGNED_IN ->9 Log.i("AuthQuickstart", "Auth just became signed in.")10 AuthChannelEventName.SIGNED_OUT ->11 Log.i("AuthQuickstart", "Auth just became signed out.")12 AuthChannelEventName.SESSION_EXPIRED ->13 Log.i("AuthQuickstart", "Auth session just expired.")14 AuthChannelEventName.USER_DELETED ->15 Log.i("AuthQuickstart", "User has been deleted.")16 }17 }18}
1RxAmplify.Hub.on(HubChannel.AUTH)2 .map(HubEvent::getName)3 .subscribe(name -> {4 if (name.equals(InitializationStatus.SUCCEEDED.toString())) {5 Log.i("AuthQuickstart", "Auth successfully initialized");6 return;7 } else if (name.equals(InitializationStatus.FAILED.toString())) {8 Log.i("AuthQuickstart", "Auth failed to succeed");9 return;10 }11 switch (AuthChannelEventName.valueOf(name)) {12 case SIGNED_IN:13 Log.i("AuthQuickstart", "Auth just became signed in.");14 break;15 case SIGNED_OUT:16 Log.i("AuthQuickstart", "Auth just became signed out.");17 break;18 case SESSION_EXPIRED:19 Log.i("AuthQuickstart", "Auth session just expired.");20 break;21 case USER_DELETED:22 Log.i("AuthQuickstart", "User has been deleted.");23 break;24 default:25 Log.w("AuthQuickstart", "Unhandled Auth Event: " + AuthChannelEventName.valueOf(name));26 break;27 }28 });