앱 패키지 형식

Windows 앱을 포함하는 표준 MSIX 패키지 외에도 특정 시나리오에 유용한 몇 가지 유형의 특수 MSIX 패키지 형식이 있습니다.

선택적 패키지

선택적 패키지는 앱 패키지의 원래 기능을 보충하거나 확장하는 데 사용됩니다. 앱을 먼저 게시하고 나중에 선택적 패키지를 게시하거나 앱과 선택적 패키지를 동시에 둘 다 게시할 수 있습니다. 선택적 패키지를 통해 앱을 확장하여 콘텐츠를 별도의 앱 패키지로 배포하고 수익화할 수 있는 이점이 있습니다. 선택적 패키지는 앱 확장과 달리 메인 앱의 ID로 실행되므로 대개 원래 앱 개발자가 개발합니다. 선택적 패키지를 어떻게 정의하느냐에 따라 선택적 패키지에서 메인 앱으로 코드나 자산 또는 코드와 자산을 로드할 수 있습니다. 별도로 수익화하고 라이선스를 허용하고 배포할 수 있는 콘텐츠로 앱을 향상시켜야 하는 경우 선택적 패키지가 올바른 선택입니다.

자세한 내용은 선택적 패키지 및 관련 집합 작성을 참조하세요.

앱 스트리밍 설치

스트리밍 설치는 앱이 사용자에게 전달되는 방식을 최적화하는 방법입니다. 전체 앱이 다운로드되기를 기다렸다가 사용하는 대신 필요한 부분이 다운로드되면 바로 앱을 실행할 수 있습니다. 기본 활성화 및 실행에 필요한 섹션과 앱의 나머지 부분을 위한 추가 콘텐츠로 앱을 나누는 것은 개발자에게 달려 있습니다.

자세한 내용은 앱 스트리밍 설치를 참조하세요.

플랫 번들 패키지

플랫 번들 앱 패키지는 일반 앱 번들과 유사합니다. 단, 폴더 내에 모든 앱 패키지를 포함하는 대신 플랫 번들에는 해당 앱 패키지에 대한 참조 만 포함됩니다. 파일 자체 대신 앱 패키지에 대한 참조를 포함하여 플랫 번들은 앱을 패키지하고 다운로드하는 데 걸리는 시간을 줄입니다.

자세한 내용은 플랫 번들 앱 패키지를 참조하세요.

자산 패키지

자산 패키지는 앱에서 사용할 일반적인 중앙 집중식 실행 파일 또는 실행 불가능한 파일의 원본입니다. 일반적으로 비 프로세서 또는 특정 언어 파일입니다. 예를 들어, 한 자산 패키지에서 사진 컬렉션을, 다른 자산 패키지에서 동영상을 포함할 수 있으며 앱에서 이 둘 모두를 사용합니다. 앱이 여러 아키텍처와 여러 언어를 지원하는 경우 이러한 자산은 아키텍처 패키지 또는 리소스 패키지에 포함될 수 있지만 이러한 경우 자산이 다른 아키텍처 패키지에 여러 번 복제되며 디스크 공간을 차지하게 됩니다. 자산 패키지를 사용하는 경우 전체 앱 패키지에 한 번만 포함되면 됩니다.

자세한 내용은 자산 패키지 소개를 참조하세요.

리소스 패키지

리소스 패키지는 여러 표시 크기와 시스템 언어에 맞게 앱을 조정하는 데 사용할 수 있는 자산 전용 패키지입니다. 리소스 패키지는 사용자 언어, 시스템 규모 및 DirectX 기능을 대상으로 하여 다양한 사용자 시나리오에 맞춘 앱을 제공할 수 있게 합니다. 앱 패키지에는 여러 리소스가 들어 있을 수 있지만 OS는 사용자 디바이스의 관련 리소스만 다운로드하여 대역폭과 디스크 공간을 절약합니다.

MSIX 번들

MSIX 번들은 여러 MSIX 패키지로 구성되며 사용자가 다운로드하는 앱의 크기를 줄일 수 있습니다. 다양한 아키텍처, 언어별 자산, 다양한 이미지 크기 자산 또는 특정 디바이스에 적용되는 리소스에 유용합니다. 애플리케이션의 여러 아키텍처 버전을 하나의 엔터티에 묶음으로써 번들만 배포 위치에 업로드해야 합니다(각 아키텍처에 대해 하나를 갖는 대신). Windows 10 배포 플랫폼은 .msixbundle 패키지 유형을 알고 있으며 디바이스 아키텍처에 적용되는 파일만 다운로드합니다. 특정 앱에 .msixbundle을 배포하려는 경우 MSIX 패키지만 배포하도록 되돌릴 수 없습니다.

앱 확장

앱 확장을 사용하면 앱이 다른 앱에서 제공하는 콘텐츠를 호스트할 수 있습니다. 해당 앱의 읽기 전용 콘텐츠를 검색, 열거 및 액세스합니다.

앱에서 확장을 지원하는 경우 개발자가 앱에 대한 확장을 제출할 수 있습니다. 따라서 사전 테스트를 거치지 않은 확장을 로드할 때 호스트 앱이 강력해야 합니다. 확장을 신뢰할 수 없는 것으로 간주해야 합니다.

애플리케이션은 확장에서 코드를 로드할 수 없습니다. 코드 실행이 필요한 경우 앱 서비스를 고려합니다.

App Services

Windows 앱 서비스는 앱이 다른 앱에 서비스를 제공할 수 있도록 하여 앱 간 통신을 가능하게 합니다. Windows 10, 버전 1607부터 앱 서비스를 통해 앱이 동일한 디바이스에서 호출할 수 있는 UI 없는 서비스를 원격 디바이스에 만들 수 있습니다. 자세한 내용은 앱 서비스 만들기 및 사용을 참조하세요.

앱 서비스는 디바이스의 웹 서비스와 유사합니다. 앱 서비스는 호스트 앱에서 배경 작업으로 실행되며 다른 앱에 서비스를 제공할 수 있습니다. 예를 들어, 앱 서비스는 다른 앱에서 사용할 수 있는 바코드 스캐너 서비스를 제공할 수 있습니다. 또는 앱의 Enterprise Suite에 해당 제품군의 다른 앱에서 사용할 수 있는 일반 맞춤법 검사 앱 서비스가 있습니다.

수정 패키지

수정 패키지를 사용하면 IT 전문가가 다시 패키징하지 않고도 앱을 사용자 지정할 수 있습니다. Windows 10 버전 1809에서는 수정 패키지라는 새로운 유형의 MSIX 패키지를 도입했습니다. 수정 패키지는 활성화 지점이 없을 수 있는 플러그 인/추가 기능일 수도 있습니다. IT 전문가는 이 기능을 사용하여 애플리케이션이 엔터프라이즈의 사용자 지정에 의해 오버레이되도록 MSIX 컨테이너를 유연하게 변경할 수 있습니다.

참고 항목

앱 서비스 만들기 및 사용
자산 패키지 소개
패키징 레이아웃으로 패키지 만들기
선택형 패키지 및 관련 세트 제작
자산 패키지 및 패키지 접기를 사용하여 개발
앱 스트리밍 설치
플랫 번들 앱 패키지
Windows.ApplicationModel.AppService 네임스페이스
Windows.ApplicationModel.Extensions 네임스페이스