PackageManager.RequestAddPackageAsync 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
오버로드
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>)
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)
매개 변수
추가할 패키지의 URI입니다. 지원되는 URI 체계는 로컬 파일 경로 및 로컬 네트워크 경로뿐이므로 URI는 파일 URI 체계(file://)를 따라야 합니다.
- dependencyPackageUris
추가할 종속성 패키지의 URI입니다. 종속성 패키지가 없거나 종속성 패키지가 이미 등록된 경우 이 매개 변수는 null일 수 있습니다.
- deploymentOptions
- DeploymentOptions
DeploymentOptions 열거형의 유효한 열거형 값입니다.
- targetVolume
- PackageVolume
패키지가 설치된 볼륨입니다.
스테이징 및 등록할 기본 번들의 선택적 패키지 패밀리 이름을 지정하는 문자열입니다.
- relatedPackageUris
준비 및 등록해야 하는 기본 번들에 있는 추가 패키지의 URI입니다.
- packageUrisToInstall
스테이징 및 등록할 다른 패키지 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>)
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)
매개 변수
추가할 패키지의 URI입니다. 지원되는 URI 체계는 로컬 파일 경로 및 로컬 네트워크 경로뿐이므로 URI는 파일 URI 체계(file://)를 따라야 합니다.
- dependencyPackageUris
추가할 종속성 패키지의 URI입니다. 종속성 패키지가 없거나 종속성 패키지가 이미 등록된 경우 이 매개 변수는 null일 수 있습니다.
- deploymentOptions
- DeploymentOptions
DeploymentOptions 열거형의 유효한 열거형 값입니다.
- targetVolume
- PackageVolume
패키지가 설치된 볼륨입니다.
스테이징 및 등록할 기본 번들의 선택적 패키지 패밀리 이름을 지정하는 문자열입니다.
- relatedPackageUris
준비 및 등록해야 하는 기본 번들에 있는 추가 패키지의 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.
}
}
}