다음을 통해 공유


PackageManager.RequestAddPackageAsync 메서드

정의

오버로드

RequestAddPackageAsync(Uri, IIterable<Uri>, DeploymentOptions, PackageVolume, IIterable<String>, IIterable<Uri>, IIterable<Uri>)

앱 패키지를 설치하기 전에 SmartScreen 검사 및 사용자 확인을 요청합니다. 이 메서드는 packageUrisToInstall 오버로드를 제공하여 준비 및 등록할 외부 패키지를 지정합니다.

RequestAddPackageAsync(Uri, IIterable<Uri>, DeploymentOptions, PackageVolume, IIterable<String>, IIterable<Uri>)

앱 패키지를 설치하기 전에 SmartScreen 검사 및 사용자 확인을 요청합니다.

RequestAddPackageAsync(Uri, IIterable<Uri>, DeploymentOptions, PackageVolume, IIterable<String>, IIterable<Uri>, IIterable<Uri>)

앱 패키지를 설치하기 전에 SmartScreen 검사 및 사용자 확인을 요청합니다. 이 메서드는 packageUrisToInstall 오버로드를 제공하여 준비 및 등록할 외부 패키지를 지정합니다.

public:
 virtual IAsyncOperationWithProgress<DeploymentResult ^, DeploymentProgress> ^ RequestAddPackageAsync(Uri ^ packageUri, IIterable<Uri ^> ^ dependencyPackageUris, DeploymentOptions deploymentOptions, PackageVolume ^ targetVolume, IIterable<Platform::String ^> ^ optionalPackageFamilyNames, IIterable<Uri ^> ^ relatedPackageUris, IIterable<Uri ^> ^ packageUrisToInstall) = RequestAddPackageAsync;
/// [Windows.Foundation.Metadata.Overload("RequestAddPackageAndRelatedSetAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress> RequestAddPackageAsync(Uri const& packageUri, IIterable<Uri> const& dependencyPackageUris, DeploymentOptions const& deploymentOptions, PackageVolume const& targetVolume, IIterable<winrt::hstring> const& optionalPackageFamilyNames, IIterable<Uri> const& relatedPackageUris, IIterable<Uri> const& packageUrisToInstall);
[Windows.Foundation.Metadata.Overload("RequestAddPackageAndRelatedSetAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<DeploymentResult,DeploymentProgress> RequestAddPackageAsync(System.Uri packageUri, IEnumerable<System.Uri> dependencyPackageUris, DeploymentOptions deploymentOptions, PackageVolume targetVolume, IEnumerable<string> optionalPackageFamilyNames, IEnumerable<System.Uri> relatedPackageUris, IEnumerable<System.Uri> packageUrisToInstall);
function requestAddPackageAsync(packageUri, dependencyPackageUris, deploymentOptions, targetVolume, optionalPackageFamilyNames, relatedPackageUris, packageUrisToInstall)
Public Function RequestAddPackageAsync (packageUri As Uri, dependencyPackageUris As IEnumerable(Of Uri), deploymentOptions As DeploymentOptions, targetVolume As PackageVolume, optionalPackageFamilyNames As IEnumerable(Of String), relatedPackageUris As IEnumerable(Of Uri), packageUrisToInstall As IEnumerable(Of Uri)) As IAsyncOperationWithProgress(Of DeploymentResult, DeploymentProgress)

매개 변수

packageUri
Uri Uri

추가할 패키지의 URI입니다. 지원되는 URI 체계는 로컬 파일 경로 및 로컬 네트워크 경로뿐이므로 URI는 파일 URI 체계(file://)를 따라야 합니다.

dependencyPackageUris

IIterable<Uri>

IEnumerable<Uri>

추가할 종속성 패키지의 URI입니다. 종속성 패키지가 없거나 종속성 패키지가 이미 등록된 경우 이 매개 변수는 null일 수 있습니다.

deploymentOptions
DeploymentOptions

DeploymentOptions 열거형의 유효한 열거형 값입니다.

targetVolume
PackageVolume

패키지가 설치된 볼륨입니다.

optionalPackageFamilyNames

IIterable<String>

IEnumerable<String>

IIterable<Platform::String>

IIterable<winrt::hstring>

스테이징 및 등록할 기본 번들의 선택적 패키지 패밀리 이름을 지정하는 문자열입니다.

relatedPackageUris

IIterable<Uri>

IEnumerable<Uri>

준비 및 등록해야 하는 기본 번들에 있는 추가 패키지의 URI입니다.

packageUrisToInstall

IIterable<Uri>

IEnumerable<Uri>

스테이징 및 등록할 다른 패키지 URI 목록입니다. 여기에는 설치할 외부 패키지에 대한 경로가 포함될 수 있습니다.

반환

앱 패키지를 추가하는 진행률 및 결과입니다.

특성

Windows 요구 사항

디바이스 패밀리
Windows 10, version 1803 (10.0.17134.0에서 도입되었습니다.)
API contract
Windows.Foundation.UniversalApiContract (v6.0에서 도입되었습니다.)

추가 정보

적용 대상

RequestAddPackageAsync(Uri, IIterable<Uri>, DeploymentOptions, PackageVolume, IIterable<String>, IIterable<Uri>)

앱 패키지를 설치하기 전에 SmartScreen 검사 및 사용자 확인을 요청합니다.

public:
 virtual IAsyncOperationWithProgress<DeploymentResult ^, DeploymentProgress> ^ RequestAddPackageAsync(Uri ^ packageUri, IIterable<Uri ^> ^ dependencyPackageUris, DeploymentOptions deploymentOptions, PackageVolume ^ targetVolume, IIterable<Platform::String ^> ^ optionalPackageFamilyNames, IIterable<Uri ^> ^ relatedPackageUris) = RequestAddPackageAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress> RequestAddPackageAsync(Uri const& packageUri, IIterable<Uri> const& dependencyPackageUris, DeploymentOptions const& deploymentOptions, PackageVolume const& targetVolume, IIterable<winrt::hstring> const& optionalPackageFamilyNames, IIterable<Uri> const& relatedPackageUris);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<DeploymentResult,DeploymentProgress> RequestAddPackageAsync(System.Uri packageUri, IEnumerable<System.Uri> dependencyPackageUris, DeploymentOptions deploymentOptions, PackageVolume targetVolume, IEnumerable<string> optionalPackageFamilyNames, IEnumerable<System.Uri> relatedPackageUris);
function requestAddPackageAsync(packageUri, dependencyPackageUris, deploymentOptions, targetVolume, optionalPackageFamilyNames, relatedPackageUris)
Public Function RequestAddPackageAsync (packageUri As Uri, dependencyPackageUris As IEnumerable(Of Uri), deploymentOptions As DeploymentOptions, targetVolume As PackageVolume, optionalPackageFamilyNames As IEnumerable(Of String), relatedPackageUris As IEnumerable(Of Uri)) As IAsyncOperationWithProgress(Of DeploymentResult, DeploymentProgress)

매개 변수

packageUri
Uri Uri

추가할 패키지의 URI입니다. 지원되는 URI 체계는 로컬 파일 경로 및 로컬 네트워크 경로뿐이므로 URI는 파일 URI 체계(file://)를 따라야 합니다.

dependencyPackageUris

IIterable<Uri>

IEnumerable<Uri>

추가할 종속성 패키지의 URI입니다. 종속성 패키지가 없거나 종속성 패키지가 이미 등록된 경우 이 매개 변수는 null일 수 있습니다.

deploymentOptions
DeploymentOptions

DeploymentOptions 열거형의 유효한 열거형 값입니다.

targetVolume
PackageVolume

패키지가 설치된 볼륨입니다.

optionalPackageFamilyNames

IIterable<String>

IEnumerable<String>

IIterable<Platform::String>

IIterable<winrt::hstring>

스테이징 및 등록할 기본 번들의 선택적 패키지 패밀리 이름을 지정하는 문자열입니다.

relatedPackageUris

IIterable<Uri>

IEnumerable<Uri>

준비 및 등록해야 하는 기본 번들에 있는 추가 패키지의 URI입니다.

반환

앱 패키지 배포의 진행률 및 결과입니다.

특성

Windows 요구 사항

디바이스 패밀리
Windows 10 Fall Creators Update (10.0.16299.0에서 도입되었습니다.)
API contract
Windows.Foundation.UniversalApiContract (v5.0에서 도입되었습니다.)

예제

이 예제에서는 단추 클릭 처리기에 연결하여 UWP 앱에서 RequestAddPackageAsync를 사용하는 방법을 보여 줍니다. 그러면 SmartScreen 요청 UI 창이 호출됩니다.

public async void OnInstallNowClicked(object sender, RoutedEventArgs args)
{
    var packageManager = new PackageManager();
    DeploymentOperation result = await packageManager.RequestAddPackageAsync(
            this.currentPackageUri,
            null /*no dependencies*/,
            DeploymentOptions.None,
            null /*stage to default package volume*/,
            null /*no optional packages*/,
            null /*no external packages*/);

    if (result.ExtendedErrorCode != null)
    {
        if (result.ExtendedErrorCode.HResult == 0x80073d01)
        {
            // SmartScreen blocked the app installation.
        }
        else
        {
            // The app installation failed for another reason.
        }
    }
}

추가 정보

적용 대상