Here are the examples of the java api class com.google.android.gms.games.snapshot.Snapshot taken from open source projects.
1. GoogleCloudSave#processOpenSnapshotResult()
Project: dice-heroes
File: GoogleCloudSave.java
File: GoogleCloudSave.java
private void processOpenSnapshotResult(OpenSnapshotResult result, final UserData userData, IConflictResolver resolver) { final Snapshot snapshot = result.getSnapshot(); if (result.getStatus().isSuccess()) { final SnapshotContents contents = snapshot.getSnapshotContents(); final Map server = fromBytes(contents); if (server != null && server.containsKey("uuid") && !server.get("uuid").equals(userData.uuid())) { performUserResolve(server, resolver, new IConflictResolverCallback() { @Override public void onResolved(boolean useLocal) { contents.writeBytes(useLocal ? toBytes(userData) : toBytes(server)); Games.Snapshots.commitAndClose(client, snapshot, EMPTY_CHANGE); } }); } else { contents.writeBytes(toBytes(userData)); Games.Snapshots.commitAndClose(client, snapshot, EMPTY_CHANGE); } } else if (result.getStatus().getStatusCode() == GamesStatusCodes.STATUS_SNAPSHOT_CONFLICT) { Snapshot conflictingSnapshot = result.getConflictingSnapshot(); startResolving(userData, conflictingSnapshot, result.getConflictId(), resolver); } }
2. MainActivity#selectSnapshotItem()
Project: android-basic-samples
File: MainActivity.java
File: MainActivity.java
private void selectSnapshotItem(int requestCode, ArrayList<Snapshot> items, String conflictId, int retryCount) { ArrayList<SnapshotMetadata> snapshotList = new ArrayList<SnapshotMetadata>(items.size()); for (Snapshot m : items) { snapshotList.add(m.getMetadata().freeze()); } Intent intent = new Intent(this, SelectSnapshotActivity.class); intent.putParcelableArrayListExtra(SelectSnapshotActivity.SNAPSHOT_METADATA_LIST, snapshotList); intent.putExtra(SelectSnapshotActivity.CONFLICT_ID, conflictId); intent.putExtra(SelectSnapshotActivity.RETRY_COUNT, retryCount); Log.d(TAG, "Starting activity to select snapshot"); startActivityForResult(intent, requestCode); }