ich den folgenden Code haben:Play Games Snapshot Konfliktlösung gibt Konflikt
Snapshots.OpenSnapshotResult result;
result = Games.Snapshots.open(googleApiClient, "save", true).await();
while (result == null || !result.getStatus().isSuccess()) {
Log.d("Snapshot", "Open snapshot");
if (result.getStatus().getStatusCode() == GamesStatusCodes.STATUS_SNAPSHOT_CONFLICT) {
Snapshot snapshot = result.getSnapshot();
Snapshot conflictSnapshot = result.getConflictingSnapshot();
// Resolve between conflicts by selecting the newest of the conflicting snapshots.
Snapshot mResolvedSnapshot = snapshot;
if (snapshot.getMetadata().getLastModifiedTimestamp() <
conflictSnapshot.getMetadata().getLastModifiedTimestamp()) {
mResolvedSnapshot = conflictSnapshot;
}
result = Games.Snapshots.resolveConflict(
googleApiClient, result.getConflictId(), mResolvedSnapshot).await();
}
}
Allerdings hält dieser Code in der while-Schleife stecken zu bleiben. result
behält den Status STATUS_SNAPSHOT_CONFLICT
. Irgendwelche Ideen, warum das nicht gelöst wird?
Der Punkt ist, tut es nicht. –
Wie viele Iterationen hat es getan? Können Sie ein Protokoll teilen? –
Okay, wow. Jetzt hat es getan. Mein Telefon lag gerade über 30 Minuten dort, also vermute ich etwa 100 Iterationen. –