2016-03-28 3 views
0

Ich verwende AWS Cognito für die Geräteauthentifizierung und -synchronisierung. Ich habe auch nicht authentifizierte Benutzer aktiviert.AWS Cognito gibt nach dem Löschen von App-Daten in Android eine neue ID zurück

Die App funktioniert einwandfrei. Ich bin in der Lage, die Benutzerdaten über die ID zu verfolgen. Wenn der Benutzer jedoch die App-Daten aus den Einstellungen löscht und eine Cognito-Identität anfordert, wird eine neue Identität generiert.

Wie kann ich sicherstellen, dass nur einem Gerät eine Identität zugewiesen ist? Ich bin kein Android-Experte. Bitte teilen Sie einen relevanten Dokumentationslink mit. Ich habe es versucht, aber habe nichts gefunden.

Antwort

0

Das Cognito Android SDK speichert die Identitäts-ID in den gemeinsamen Einstellungen, sodass es gelöscht wird, wenn die Daten gelöscht werden. Wenn Sie nicht authentifizierte Identitäten verwenden und Daten gelöscht werden, besteht die einzige Möglichkeit, eine Identität beizubehalten, darin, sie extern zu verfolgen (d. H., Sie in einer Datei aufrechtzuerhalten).

Wenn Sie authentifiziert verwenden, würde die Übergabe des gleichen Provider-Tokens die gleiche ID garantieren. Wenn Sie auch Cognito Sync verwenden, empfehle ich Ihnen, authenticated statt unauth zu verwenden. Dies würde es dem Benutzer ermöglichen, die gleiche ID und Daten auf mehreren Geräten leicht zu erhalten, und würde eine verlorene Identitäts-ID inhärent verhindern.

Es gibt logisch keine Möglichkeit für Cognito zu wissen, dass zwei nicht authentifizierte IDs zu derselben Person gehören.

+0

Auch wenn sich der Benutzer vom Konto abmeldet, generiert Cognito eine neue ID. – Chaitanya

+0

Das erwartete Verhalten - eine Identität kann nicht von authentifiziert zurück zu nicht authentifiziert werden. Wenn Sie sich erneut anmelden und das Provider-Token erneut hinzufügen, erhalten Sie die ursprüngliche authentifizierte ID zurück. –

Verwandte Themen