Partilhar via


GameSaveContainer.SubmitUpdatesAsync Método

Definição

Envia um conjunto de alterações para o jogo salvar blobs neste contêiner. As alterações podem ser gravações em blobs ou a exclusão de blobs existentes. Se o contêiner não existir, um novo será criado. Todas as gravações e atualizações são aplicadas atomicamente. Tentar gravar e excluir o mesmo blob resulta em um erro. Somente 16 MB de dados podem ser gravados por chamada.

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

IMapView<String,IBuffer>

IReadOnlyDictionary<String,IBuffer>

IMapView<Platform::String,IBuffer>

IMapView<winrt::hstring,IBuffer>

Tipo: IMapView<; String, IBuffer>; [JavaScript/C++] | System.Collections.Generic.IReadOnlyDictionary<; String, IBuffer>; [.NET]

Coleção de nomes de blob e os dados a serem gravados para cada blob. O comprimento máximo de um nome de blob é de 63 caracteres.

blobsToDelete

IIterable<String>

IEnumerable<String>

IIterable<Platform::String>

IIterable<winrt::hstring>

Tipo: IIterable<; String>; [JavaScript/C++] | System.Collections.Generic.IEnumerable<; String>; [.NET]

Coleção que contém os nomes de cadeia de caracteres de blobs a serem excluídos. O comprimento máximo de um nome de blob é de 63 caracteres.

displayName
String

Platform::String

winrt::hstring

Tipo: Cadeia de caracteres [JavaScript] | System.String [.NET] | Platform::String [C++]

O nome de exibição do contêiner salvar jogo. Defina isso como o nome que será exibido para o jogo salvar. O comprimento máximo do nome de exibição é de 127 caracteres.

Retornos

Tipo: IAsyncOperation<; GameSaveOperationResult>;

IAsyncOperation<; GameSaveOperationResult>; que representa o estado da operação assíncrona.

Atributos

Comentários

Após a conclusão da operação assíncrona, marcar a propriedade Status do resultado para determinar se a operação foi bem-sucedida com GameSaveErrorStatus.Ok.

Cada TitleID/SCID é limitado a um total de 256 MB de armazenamento por usuário.

Quando um título atingir seu limite de armazenamento para um usuário, as chamadas para SubmitUpdatesAsync falharão.

Se um nome de blob ou o nome de exibição exceder o comprimento máximo, o salvamento do jogo falhará ao carregar.

As chamadas SubmitUpdatesAsync não devem assumir que uma chamada submitUpdatesAsync futura será concluída com êxito para deixar o contêiner em um estado válido. Cada chamada SubmitUpdatesAsync deve deixar o conteúdo do contêiner especificado em um estado válido para que o aplicativo seja lido posteriormente. Por exemplo, se um jogador comprar alimentos com ouro em um jogo, os novos valores para ouro e alimentos deverão ser atualizados na mesma chamada para SubmitUpdatesAsync. Isso garante que ambos os valores sejam atualizados ao mesmo tempo ou no caso de uma falha de energia ou algum outro evento que impeça a atualização, tanto o alimento quanto o ouro ainda terão seus valores originais.

Aplica-se a

Confira também