XGameSave
A API XGameSave foi projetada para permitir criar, carregar, salvar e gerenciar estados relacionados ao jogo. A principal diferença entre esta e as implementações anteriores é que esta fornecerá uma API simples com acesso a um Modelo de Programação Assíncrona que permite ao chamador controlar o threading e o gerenciamento de memória do comportamento da API.Funções
| Função | Descrição |
|---|---|
| XGameSaveBlobInfoCallback | Função de retorno de chamada para recuperar os resultados de XGameSaveEnumerateBlobInfo. |
| XGameSaveCloseContainer | Fecha o XGameSaveContainer. |
| XGameSaveCloseProvider | Libera os recursos mantidos pelo XGameSaveProvider. |
| XGameSaveCloseUpdate | Fecha um XGameSaveUpdate. |
| XGameSaveContainerInfoCallback | A função de retorno de chamada para uma chamada feita a XGameSaveGetContainerInfo. |
| XGameSaveCreateContainer | Cria um identificador de XGameSaveContainer. |
| XGameSaveCreateUpdate | Cria uma atualização que será enviada posteriormente chamando XGameSaveSubmitUpdate. |
| XGameSaveDeleteContainer | Exclui um XGameSaveContainer do armazenamento em nuvem. |
| XGameSaveDeleteContainerAsync | Exclui um XGameSaveContainer de forma assíncrona. |
| XGameSaveDeleteContainerResult | Recupera o resultado de uma chamada de XGameSaveDeleteContainerAsync; use esta função para verificar o êxito da chamada. |
| XGameSaveEnumerateBlobInfo | Recupera as informações de blob do conteúdo de um XGameSaveContainer. |
| XGameSaveEnumerateBlobInfoByName | Recupera as informações de blob do conteúdo de um XGameSaveContainer, limitadas aos blobs que compartilham um prefixo com o parâmetro blobNamePrefix. |
| XGameSaveEnumerateContainerInfo | Recupera as informações de contêiner de um XGameSaveProvider. |
| XGameSaveEnumerateContainerInfoByName | Recupera as informações de contêiner de um XGameSaveProvider. |
| XGameSaveGetContainerInfo | Recupera informações dos contêineres em um XGameSaveProvider. |
| XGameSaveGetRemainingQuota | Retorna a quantidade de dados disponível para armazenamento usando a API XGameSave. |
| XGameSaveGetRemainingQuotaAsync | Retorna, de forma assíncrona, a quantidade de dados disponível para armazenamento usando a API XGameSave. |
| XGameSaveGetRemainingQuotaResult | Recupera os resultados da função XGameSaveGetRemainingQuotaAsync. |
| XGameSaveInitializeProvider | Fornece e inicializa um identificador de XGameSave Provider. |
| XGameSaveInitializeProviderAsync | Fornece e inicializa um identificador de XGameSave Provider de forma assíncrona. |
| XGameSaveInitializeProviderResult | Contém os resultados de uma chamada de XGameSaveInitializeProviderAsync. |
| XGameSaveReadBlobData | Lê os dados de blob de um contêiner. |
| XGameSaveReadBlobDataAsync | Lê dados de XGameSaveBlob de um XGameSaveContainer de forma assíncrona. |
| XGameSaveReadBlobDataResult | Recupera os resultados de uma chamada de XGameSaveReadBlobDataAsync. |
| XGameSaveSubmitBlobDelete | Adiciona uma ação de exclusão a um XGameSaveUpdate de salvamento de jogo. |
| XGameSaveSubmitBlobWrite | Adiciona uma ação de gravação a um XGameSaveUpdate. |
| XGameSaveSubmitUpdate | Envia uma atualização para o serviço XGameSave. Atualiza blobs dentro de um contêiner. |
| XGameSaveSubmitUpdateAsync | Envia uma atualização para o serviço XGameSave de forma assíncrona. Atualiza blobs dentro de um contêiner. |
| XGameSaveSubmitUpdateResult | Recupera o resultado da chamada de XGameSaveSubmitUpdateAsync. |
Estruturas
| Estrutura | Descrição |
|---|---|
| XGameSaveBlob | Unidade de informação para o armazenamento do XGameSave. Reside dentro de um XGameSaveContainer. |
| XGameSaveBlobInfo | Informações sobre o XGameSaveBlob. |
| XGameSaveContainerInfo | Informações sobre um XGameSaveContainer. |
Códigos de erro
Os códigos de erro a seguir podem ser retornados pelas APIs XGameSave. Para obter uma lista completa, consulte Códigos de erro. Para obter diretrizes detalhadas de solução de problemas, consulte Depuração de salvamentos de jogos.| Código | Valor | Descrição |
|---|---|---|
| E_GS_INVALID_CONTAINER_NAME | 0x80830001 | O nome do contêiner é inválido. Os caracteres válidos para nomes de contêiner incluem letras maiúsculas/minúsculas, dígitos, sublinhados e barras. |
| E_GS_NO_ACCESS | 0x80830002 | A operação falhou porque o título não tem acesso aos espaços de armazenamento do contêiner. Verifique se o SCID e o TitleId estão configurados corretamente. |
| E_GS_OUT_OF_LOCAL_STORAGE | 0x80830003 | O dispositivo não tem capacidade de armazenamento suficiente para salvar o jogo. |
| E_GS_USER_CANCELED | 0x80830004 | O usuário cancelou o download de seus jogos salvos. |
| E_GS_UPDATE_TOO_BIG | 0x80830005 | O tamanho da atualização de salvamento é muito grande. O tamanho total de uma atualização do XGameSave deve ser menor que GS_MAX_BLOB_SIZE (16 MB). |
| E_GS_QUOTA_EXCEEDED | 0x80830006 | A cota de armazenamento do título para este usuário foi excedida. |
| E_GS_PROVIDED_BUFFER_TOO_SMALL | 0x80830007 | O buffer fornecido para a API era muito pequeno. |
| E_GS_BLOB_NOT_FOUND | 0x80830008 | O blob especificado não foi encontrado. |
| E_GS_NO_SERVICE_CONFIGURATION | 0x80830009 | O título não está configurado corretamente para o armazenamento conectado. Verifique se o SCID está correto e se o título está configurado no Partner Center. |
| E_GS_CONTAINER_NOT_IN_SYNC | 0x8083000A | O contêiner ainda não está sincronizado. Verifique se o contêiner do XGameSave está sincronizado antes de enviar atualizações. |
| E_GS_CONTAINER_SYNC_FAILED | 0x8083000B | A sincronização do contêiner falhou. |
| E_GS_USER_NOT_REGISTERED_IN_SERVICE | 0x8083000C | A MSA do usuário ainda não é uma conta dos XBOX services. |
| E_GS_HANDLE_EXPIRED | 0x8083000D | O identificador usado pela função expirou e deve ser obtido novamente. |
| E_GS_ASYNC_FUNCTION_REQUIRED | 0x8083000E | Esta função síncrona está sendo chamada em um thread sensível ao tempo e corre o risco de causar deadlocks. Use a implementação assíncrona. |
| E_GS_PROVIDER_MISMATCH | 0x8083000F | O jogo está misturando chamadas de XGameSave e XGameSaveFiles, o que não é compatível. |
