GameSaveContainer.SubmitUpdatesAsync Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Envía un conjunto de cambios al juego guardar blobs en este contenedor. Los cambios pueden ser escrituras en blobs o la eliminación de blobs existentes. Si el contenedor no existe, se crea uno nuevo. Todas las escrituras y actualizaciones se aplican de forma atómica. Si se intenta escribir y eliminar el mismo blob, se produce un error. Solo se pueden escribir 16 MB de datos por llamada.
public:
virtual IAsyncOperation<GameSaveOperationResult ^> ^ SubmitUpdatesAsync(IMapView<Platform::String ^, IBuffer ^> ^ blobsToWrite, IIterable<Platform::String ^> ^ blobsToDelete, Platform::String ^ displayName) = SubmitUpdatesAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<GameSaveOperationResult> SubmitUpdatesAsync(IMapView<winrt::hstring, IBuffer const&> const& blobsToWrite, IIterable<winrt::hstring> const& blobsToDelete, winrt::hstring const& displayName);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<GameSaveOperationResult> SubmitUpdatesAsync(IReadOnlyDictionary<string,IBuffer> blobsToWrite, IEnumerable<string> blobsToDelete, string displayName);
function submitUpdatesAsync(blobsToWrite, blobsToDelete, displayName)
Public Function SubmitUpdatesAsync (blobsToWrite As IReadOnlyDictionary(Of String, IBuffer), blobsToDelete As IEnumerable(Of String), displayName As String) As IAsyncOperation(Of GameSaveOperationResult)
Parámetros
- blobsToWrite
Tipo: IMapView<; String, IBuffer>; [JavaScript/C++] | System.Collections.Generic.IReadOnlyDictionary<; String, IBuffer>; [.NET]
Colección de nombres de blobs y los datos que se van a escribir para cada blob. La longitud máxima de un nombre de blob es de 63 caracteres.
Tipo: IIterable<; String>; [JavaScript/C++] | System.Collections.Generic.IEnumerable<; String>; [.NET]
Colección que contiene los nombres de cadena de blobs que se van a eliminar. La longitud máxima de un nombre de blob es de 63 caracteres.
- displayName
-
String
Platform::String
winrt::hstring
Tipo: Cadena [JavaScript] | System.String [.NET] | Platform::String [C++]
Nombre para mostrar del contenedor del juego de guardar. Establézcalo en el nombre que se mostrará para guardar el juego. La longitud máxima del nombre para mostrar es de 127 caracteres.
Devoluciones
Tipo: IAsyncOperation<; GameSaveOperationResult>;
IAsyncOperation<; GameSaveOperationResult>; que representa el estado de la operación asincrónica.
- Atributos
Comentarios
Una vez completada la operación asincrónica, compruebe la propiedad Status del resultado para determinar si la operación se realizó correctamente con GameSaveErrorStatus.Ok.
Cada TitleID/SCID se limita a un total de 256 MB de almacenamiento por usuario.
Cuando un título ha alcanzado su límite de almacenamiento para un usuario, se producirá un error en las llamadas a SubmitUpdatesAsync .
Si un nombre de blob o el nombre para mostrar supera la longitud máxima, el guardado del juego no podrá cargarse.
Las llamadas SubmitUpdatesAsync no deben suponer que una llamada futura a SubmitUpdatesAsync se completará correctamente para dejar el contenedor en un estado válido. Cada llamada a SubmitUpdatesAsync debe dejar el contenido del contenedor especificado en un estado válido para que la aplicación lea más adelante. Por ejemplo, si un jugador compra comida con oro en un juego, los nuevos valores para el oro y la comida deben actualizarse en la misma llamada a SubmitUpdatesAsync. Esto garantiza que ambos valores se actualizarán al mismo tiempo o en caso de un error de alimentación o de algún otro evento que impida la actualización, tanto los alimentos como el oro seguirán teniendo sus valores originales.