关于 AWS Cognito 身份 ID 及其生成、唯一性的问题?

Queastions about the AWS Cognito identityId and its generation, uniqueness?

我 100% 是 AWS 和 AWS iOS SDK 的新手。

我正在使用 The Standard AWS Code Example. 来初始化 Cognito 凭据提供程序。我当然在改变@"COGNITO_IDENTITY_POOL"].

我注意到,当我第一次为设备执行此操作时,NSString *cognitoId = credentialsProvider.identityId; 为零。这是可以预料的吗?如果可以,属性 什么时候可用?

我的理解是否正确,即 SDK 将此 Cognito ID 保存在设备密钥链中?因此,只要用户备份他的操作系统,设备的身份就不会改变。例如,如果他擦除他的设备并重新安装 iOS 那么会生成一个新 ID(相同的应用程序相同的 Congnito 池)吗?但是,如果他只是删除了我的应用程序但后来又安装了它(iOS 没有变化),那么如果我使用相同的 Cognito 池,他将被识别为具有相同 ID 的现有成员吗?

"credentialsProvider.identityId"在您第一次使用SDK时为空,直到它被刷新。一旦您从服务中获得身份,它将存储在钥匙串中,并且设备将始终重复使用相同的身份(除非如您所说,用户清除钥匙串或擦除设备)。

阿尔伯特