2016-03-28 15 views
0

我正在使用AWS Cognito進行設備身份驗證和同步。我也啓用了未經身份驗證的用戶。AWS Cognito在Android中清除應用程序數據後返回新ID

該應用程序工作得很好我可以使用該ID跟蹤用戶數據。但是,當用戶從設置中清除應用數據併發出Cognit身份請求時,會生成一個新的身份。

如何確保只有一個身份被分配給一個設備?我不是Android專家。請分享任何相關的文件鏈接。我試過但沒有找到任何東西。

回答

0

Cognito Android SDK將身份標識保存在共享首選項中,因此在清除數據時會將其擦除。如果您使用的是未經身份驗證的身份,則在清除數據時,保留身份的唯一方法是從外部跟蹤它(即將其保留在文件中)。

如果您使用的是身份驗證,只需傳遞相同的提供程序令牌即可保證使用相同的ID。如果您也在使用Cognito Sync,那麼我強烈建議您使用身份驗證代替unauth。這將允許用戶輕鬆地在多個設備上獲得相同的ID和數據,並且可以防止固有地丟失身份標識。

Cognito在邏輯上沒有辦法知道兩個未經身份驗證的ID屬於同一個人。

+0

另外,當用戶註銷該帳戶時,Cognito將生成一個新的ID。 – Chaitanya

+0

這是預期的行爲 - 身份不能從認證返回未經身份驗證。如果您要重新登錄並重新添加提供程序標記,則會取回原始的已驗證身份標識。 –

相關問題