플랫 번들 앱 패키지

중요

스토어에 앱을 제출 하려는 경우 Windows 개발자 지원 에 문의 하 여 flat 번들을 사용 하도록 승인 해야 합니다.

플랫 번들은 앱의 패키지 파일을 번들로 묶는 향상 된 방법입니다. 일반적인 Windows 앱 번들 파일은 번들에 앱 패키지 파일이 포함 되어야 하는 다중 수준 패키징 구조를 사용 합니다. 플랫 번들은 앱 패키지 파일만 참조 하 여 앱 번들 외부에 있을 수 있도록 하 여이 필요성을 제거 합니다. 앱 패키지 파일은 번들에 더 이상 포함 되어 있지 않으므로 병렬 처리 될 수 있으므로 업로드 시간이 줄어들고, 게시 속도가 빨라지고 (각 앱 패키지 파일이 동시에 처리 될 수 있으므로), 궁극적으로 개발 반복 속도가 빨라집니다.

플랫 번들 다이어그램

플랫 번들의 또 다른 혜택은 더 작은 패키지를 만들어야 한다는 것입니다. 앱 패키지 파일은 참조 되기 때문에 두 버전에서 패키지를 변경 하지 않은 경우 두 버전의 앱이 동일한 패키지 파일을 참조할 수 있습니다. 그러면 앱의 다음 버전에 대 한 패키지를 빌드할 때 변경 된 앱 패키지만 만들 수 있습니다. 기본적으로 flat 번들은 같은 폴더 내에서 앱 패키지 파일을 참조 합니다. 그러나이 참조는 다른 경로 (상대 경로, 네트워크 공유 및 http 위치)로 변경할 수 있습니다. 이렇게 하려면 플랫 번들을 만드는 동안 BundleManifest 를 직접 제공 해야 합니다.

플랫 번들을 만드는 방법

플랫 번들은 MakeAppx.exe 도구를 사용 하거나 패키지 레이아웃을 사용 하 여 번들의 구조를 정의 하 여 만들 수 있습니다.

MakeAppx.exe 사용

MakeAppx.exe를 사용 하 여 플랫 번들을 만들려면 일반적인 방법으로 "MakeAppx.exe 번들" 명령을 사용 하 고,/fb 스위치를 사용 하 여 플랫 앱 번들 파일을 생성 합니다 .이 파일은 앱 패키지 파일만 참조 하 고 실제 페이로드는 포함 하지 않으므로 매우 작아야 합니다.

명령 구문의 예는 다음과 같습니다.

MakeAppx bundle [options] /d <content directory> /fb /p <output flat bundle name>

MakeAppx.exe 사용에 대 한 자세한 내용은 MakeAppx.exe 도구를 사용 하 여 앱 패키지 만들기를 참조 하세요.

패키징 레이아웃 사용

또는 압축 레이아웃을 사용 하 여 플랫 번들을 만들 수 있습니다. 이렇게 하려면 앱 번들 매니페스트의 Packagefamily 요소에서 FlatBundle 특성을 true 로 설정 합니다. 패키징 레이아웃에 대 한 자세한 내용은 패키징 레이아웃을 사용 하 여 패키지 만들기를 참조 하세요.

플랫 번들을 배포 하는 방법

플랫 번들을 배포 하기 전에 앱 번들 외에도 각 앱 패키지는 동일한 인증서를 사용 하 여 서명 되어야 합니다. 이는 모든 앱 패키지 파일 (.appx/. m i f)이 이제 독립적인 파일이 며 더 이상 앱 번들 (.appxbundle/. m n n x s) 파일에 포함 되지 않기 때문입니다.

패키지가 서명 된 후 다음 옵션 중 하나를 통해 앱을 설치할 수 있습니다.

  • 앱 설치 관리자를 사용 하 여 설치할 앱 번들 파일을 두 번 클릭 합니다.
  • PowerShell에서 add-appxpackage cmdlet 을 사용 하 여 앱 번들 파일을 가리킵니다. 앱 패키지는 앱 번들로 예상 되는 위치를 가정 합니다.

플랫 번들의 개별 .appx/. m p 6 패키지는 단독으로 배포할 수 없습니다. 이러한 사용자는 .appxbundle/. a n x 번들을 통해 배포 되어야 합니다. 그러나 초기 설치 후에 플랫 번들의 개별 .appx/. m i d 패키지를 업데이트할 수 있습니다. 개별 .appx/. m i 6 패키지를 업데이트 하는 경우에는 플랫 번들의 매니페스트도 업데이트 해야 합니다.

예를 들어, v1 플랫 번들이. a n x번들, x86. msix, x64. msix으로 구성 된 경우 v2 번들에 자산 패키지만 변경 된 것이 있다는 것을 알게 되 면,. msixbundle 및 asset. msix을 빌드하여 업데이트를 설치할 수 있습니다. 번들은 해당. m 6 패키지의 모든 버전을 추적 하기 때문에 v2 용. msixbundle을 빌드해야 합니다. 자산의 버전을 bumping 하 여이 새 참조가 포함 된 새. msixbundle이 필요 합니다. V2. msixbundle에는 v1 x86. msix 및 x64. msix에 대 한 참조가 포함 될 수 있습니다. 플랫 번들의. m 6 패키지는 동일한 버전 번호를 가질 필요가 없습니다.