首页 文章

如何在android中登录电子邮件和密码登录时获取cognito用户ID

提问于
浏览
0

我正在使用Android中的Amazon Cognito服务通过电子邮件和密码进行用户注册 . 我成功注册,登录和忘记密码流程 .

我使用以下代码获取了cognito用户ID, the problem is i am getting the same cognito user id that i received during first time login for the other users too. i.e., when i login next time with different credentials i'm getting the same cognito user id of the first user

credentialsProvider = new CognitoCachingCredentialsProvider(
                getApplicationContext(), // Context
                "us-east-1:2ce7b2c2-898f-4a26-9066-d4feff8ebfe4", //Identity Pool ID
                Regions.US_EAST_1 // Region
        );

        Observable.create(new Observable.OnSubscribe<String>() {
            @Override
            public void call(Subscriber<? super String> subscriber) {
                identityId = credentialsProvider.getIdentityId();                    
            }
        })
                .subscribeOn(Schedulers.newThread())
                .observeOn(AndroidSchedulers.mainThread())
                .subscribe();
    }

请承担我的问题,因为我是首发,所以请帮助并分享这些认知用户ID如何工作的想法

  • 因为我认为Cognito用户ID对每个用户都是唯一的

  • 在使用ios / web等不同设备登录时,Cognito用户ID不会更改 .

1 回答

  • 0

    好像您在设备上获得缓存的身份ID和凭据 . 当新用户登录或您注销用户时,可以尝试调用credentialsProvider.clear() . 这应该清除缓存的身份标识 .

相关问题