エクスポート (0) 印刷
すべて展開
情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

DataRequest.GetDeferral | getDeferral Method

DataRequestDeferral オブジェクトを作成し、返すことによって非同期の共有操作をサポートします。

構文


var dataRequestDeferral = dataRequest.getDeferral();

パラメーター

これメソッドにはパラメーターがありません。

戻り値

型: DataRequestDeferral

コンテンツを非同期的に共有または送信するオブジェクトです。

解説

GetDeferral メソッドを使用すると、アプリケーションは共有操作中に関数を呼び出すことができます。それにより、アプリケーションはターゲット アプリケーションの DataPackage オブジェクトを非同期的に生成できます。

このメソッドは、共有操作中に、非同期関数呼び出しを使用して DataPackage を生成する場合に使用します。この関数は、操作がタイムアウトすることを防止するために 200 ミリ秒以内に DataPackage オブジェクトを返す必要があります。アプリケーションで、ファイルや写真のコレクションなど、パッケージ化に時間がかかるコンテンツを共有している場合は、このメソッドを使用しないでください。代わりに、SetDataProvider メソッドを使用して、デリゲートを DataPackage に割り当ててその DataPackage を対象のアプリケーションに返します。

Windows Phone 8

この API は実装されていません。呼び出された場合は、例外をスローします。「Windows Phone ランタイム API」を参照してください。

GetDeferral メソッドを使用することにより、DataRequestDeferral オブジェクトを取得する方法を次の例に示します。


function registerForShare() {
    var dataTransferManager = Windows.ApplicationModel.DataTransfer.DataTransferManager.getForCurrentView();
    dataTransferManager.addEventListener("datarequested", shareImageHandler);
}

function shareImageHandler(e) {
    var request = e.request;
    request.data.properties.title = "Share Image Example";
    request.data.properties.description = "A demonstration that shows how to share an image.";
    var deferral = request.getDeferral();
    Windows.ApplicationModel.Package.current.installedLocation.getFileAsync("images\\smalllogo.png").then(function (thumbnailFile) {
        request.data.properties.thumbnail = Windows.Storage.Streams.RandomAccessStreamReference.createFromFile(thumbnailFile);
        return Windows.ApplicationModel.Package.current.installedLocation.getFileAsync("images\\logo.png");
    }).done(function (imageFile) {
        request.data.setBitmap(Windows.Storage.Streams.RandomAccessStreamReference.createFromFile(imageFile));
        deferral.complete();
    }, function (err) {
        request.failWithDisplayText(err);
    });
}


要件

最小限サポートされるクライアント

Windows 8

最小限サポートされるサーバー

Windows Server 2012

最小限サポートされる携帯電話

Windows Phone 8 [実装されていません。"解説" を参照してください]

名前空間

Windows.ApplicationModel.DataTransfer
Windows::ApplicationModel::DataTransfer [C++]

メタデータ

Windows.winmd

参照

DataRequest

 

 

表示:
© 2015 Microsoft