次の方法で共有


GameSaveContainer.SubmitUpdatesAsync メソッド

定義

このコンテナー内のゲームの保存 BLOB に一連の変更を送信します。 変更は、BLOB に書き込んだり、既存の BLOB を削除したりできます。 コンテナーが存在しない場合は、新しいコンテナーが作成されます。 すべての書き込みと更新はアトミックに適用されます。 同じ BLOB を書き込んで削除しようとすると、エラーが発生します。 呼び出しごとに書き込まれるデータは 16 MB のみです。

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)

パラメーター

blobsToWrite

IMapView<String,IBuffer>

IReadOnlyDictionary<String,IBuffer>

IMapView<Platform::String,IBuffer>

IMapView<winrt::hstring,IBuffer>

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

各 BLOB の BLOB 名と書き込むデータのコレクション。 BLOB 名の最大長は 63 文字です。

blobsToDelete

IIterable<String>

IEnumerable<String>

IIterable<Platform::String>

IIterable<winrt::hstring>

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

削除する BLOB の文字列名を含むコレクション。 BLOB 名の最大長は 63 文字です。

displayName
String

Platform::String

winrt::hstring

型: String [JavaScript] | System.String [.NET] | Platform::String [C++]

ゲーム コンテナーの表示名を保存します。 これをゲームの保存に表示される名前に設定します。 表示名の最大長は 127 文字です。

戻り値

型: IAsyncOperation<;GameSaveOperationResult>;

IAsyncOperation<;GameSaveOperationResult>。 非同期操作の状態を表します。

属性

注釈

非同期操作が完了したら、結果の Status プロパティをチェックして、操作が GameSaveErrorStatus.Ok で成功したかどうかを判断します。

各 TitleID/SCID は、ユーザーあたり合計 256 MB のストレージに制限されています。

タイトルがユーザーのストレージ制限に達すると、 SubmitUpdatesAsync の呼び出しは失敗します。

BLOB 名または表示名が最大長を超えた場合、ゲームの保存はアップロードに失敗します。

SubmitUpdatesAsync 呼び出しでは、コンテナーの有効な状態を保つために、その後の SubmitUpdatesAsync 呼び出しが正常に完了することを想定しないでください。 各 SubmitUpdatesAsync 呼び出しで、指定されたコンテナーの内容を有効な状態にし、アプリケーションが後で読み取ることができるようにする必要があります。 たとえば、プレイヤーがゲームでゴールドの食品を購入した場合、 SubmitUpdatesAsync の同じ呼び出しでゴールドとフードの新しい値を更新する必要があります。 これにより、両方の値が同時に更新されるか、電源障害が発生した場合や、更新を妨げるその他のイベントが発生した場合でも、食品とゴールドの両方に元の値が残ります。

適用対象

こちらもご覧ください