정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

DataRequest.GetDeferral | getDeferral Method

DataRequestDeferral 개체를 만들고 반환하여 비동기 공유 작업을 지원합니다.

구문


var dataRequestDeferral = dataRequest.getDeferral();

매개 변수

이 메서드에는 매개 변수가 없습니다.

반환 값

형식: DataRequestDeferral

콘텐츠를 비동기적으로 보내거나 공유할 수 있도록 하는 개체입니다.

설명

GetDeferral 메서드를 사용하면 앱에서 공유 작업 중에 함수를 호출할 수 있으므로 앱에서 대상 앱에 대해 DataPackage 개체를 비동기적으로 생성할 수 있습니다.

비동기 함수 호출을 사용하여 공유 작업 동안 DataPackage를 생성하려는 경우 이 메서드를 사용합니다. 이 함수는 작업이 시간 초과되지 않도록 200ms 내에 DataPackage 개체를 반환해야 합니다. 앱에서 파일 또는 사진 컬렉션과 같이 패키지하는 데 더 많은 시간이 드는 콘텐츠를 공유할 경우 이 메서드를 사용하지 마십시오. 대신 SetDataProvider 메서드를 사용하여 대리자를 DataPackage에 할당하고 해당 DataPackage를 대상 앱에 반환합니다.

Windows Phone 8

이 API는 구현되어 있지 않으므로 호출할 경우 예외가 throw됩니다. 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[구현되지 않음, 설명 참조]

Namespace

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

Metadata

Windows.winmd

참고 항목

DataRequest

 

 

표시: