비 Windows 10 플랫폼에서 MSIX 패키지를 배포 하려면 MSIX SDK를 사용 합니다.

MSIX SDK는 개발자가 클라이언트 장치 OS 플랫폼에 관계 없이 클라이언트 장치에 패키지 콘텐츠를 배포 하는 유니버설 방법이 제공 합니다. 이 통해 개발자는 대신 한 번 앱 콘텐츠를 패키지 하려면 각 플랫폼에 대 한 패키지입니다.

MSIX SDK 및 여러 플랫폼으로 패키지 내용을 배포 하는 기능을 활용 하려는 패키지를 추출 하는 대상 플랫폼을 지정 하는 방법을 제공 합니다. 즉, 패키지 콘텐츠를 원하는 때에 패키지에서 추출 되는 것을 확인할 수 있습니다.

다음 표에서 매니페스트에 선언 하는 대상 장치 제품군을 보여 줍니다.

플랫폼 패밀리 대상 장치 제품군 참고
Windows 10 전화





















Platform.All























Windows.Universal Windows.Mobile 모바일 장치
데스크톱 Windows.Desktop PC
Xbox Windows.Xbox Xbox 콘솔
Surface Hub Windows.Team 큰 화면 Win 10 장치
HoloLens Windows.Holographic VR/AR 헤드셋
IoT Windows.IoT IoT 장치
iOS 전화 Apple.Ios.All Apple.Ios.Phone iPhone, Touch
태블릿 Apple.Ios.Tablet iPad Pro iPad mini, iPad
TV Apple.Ios.TV Apple TV
보기 Apple.Ios.Watch iWatch
MacOS 데스크톱 Apple.MacOS.All MacBook Pro, MacBook Air, Mac Mini, iMac
Android 전화 Google.Android.All Google.Android.Phone 모든 버전의 Android 대상으로 하는 모바일 장치
태블릿 Google.Android.Tablet Android 태블릿
데스크톱 Google.Android.Desktop Chromebooks
TV Google.Android.TV 큰 화면 android 장치
보기 Google.Android.Watch Google 기어 장치
Windows 7 Windows7.Desktop Windows 7 장치
8 Windows8.Desktop Windows 8/8.1 장치
Microsoft Web.All Web.Edge.All Edge 엔진 webapp입니다.
Android Web.Blink.All Webapp 엔진 깜박임
Chrome Web.Chromium.All Chrome 웹 엔진 앱
iOS Web.Webkit.All Webkit webapp 엔진
MacOS Web.Safari.All Safari 웹 엔진 앱
Linux Any/All Linux.All 모든 Linux 배포

앱 패키지 매니페스트 파일에서 특정 플랫폼 및 장치에만 추출할 패키지 콘텐츠를 원하는 경우 적절 한 대상 장치 제품군을 포함 해야 합니다. 플랫폼 및 장치에 대 한 모든 형식에 대해 지원 되는 방식으로 패키지 bulid 원하는 경우 선택할 Platform.All 대상 장치 제품군으로 합니다. 웹 앱에만 지원 되는 데 패키지 처럼 선택할 Web.All합니다.

샘플 매니페스트 파일 (AppxManifest.xml)

<?xml version="1.0" encoding="utf-8"?>
<Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
         xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
         xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
         xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
         IgnorableNamespaces="mp uap uap3">

  <Identity Name="BestAppExtension"
            Publisher="CN=awesomepublisher"
            Version="1.0.0.0" />

  <mp:PhoneIdentity PhoneProductId="56a6ecda-c215-4864-b097-447edd1f49fe" PhonePublisherId="00000000-0000-0000-0000-000000000000"/>

  <Properties>
    <DisplayName>Best App Extension</DisplayName>
    <PublisherDisplayName>Awesome Publisher</PublisherDisplayName>
    <Description>This is an extension package to my app</Description>
    <Logo>Assets\StoreLogo.png</Logo>
  </Properties>

  <Resources>
    <Resource Language="x-generate"/>
  </Resources>

  <Dependencies>
    <TargetDeviceFamily Name="Platform.All" MinVersion="0.0.0.0" MaxVersionTested="0.0.0.0"/>
  </Dependencies>

  <Applications>
    <Application Id="App">
      <uap:VisualElements
          DisplayName="Best App Extension"
          Description="This is the best app extension"
          BackgroundColor="white"
          Square150x150Logo="images\squareTile-sdk.png"
          Square44x44Logo="images\smallTile-sdk.png"
          AppListEntry="none">
      </uap:VisualElements>

      <Extensions>
        <uap3:Extension Category="Windows.appExtension">
          <uap3:AppExtension Name="add-in-contract" Id="add-in" PublicFolder="Public" DisplayName="Sample Add-in" Description="This is a sample add-in">
            <uap3:Properties>
               <!--Free form space-->
            </uap3:Properties>
          </uap3:AppExtension>
        </uap3:Extension>
      </Extensions>

    </Application>
  </Applications>
</Package>

플랫폼 버전

위의 샘플 매니페스트 파일에 플랫폼 이름 함께 매개 변수가 지정 된 MinVersion 하 고 MaxVersionTested Windows 10 플랫폼에서 이러한 매개 변수를 사용 합니다. Windows 10에서 패키지를 MinVersion 보다 큰 Windows 10 운영 체제 버전에서 배포만 됩니다. 다른 비-Windows 10 플랫폼에서 패키지 콘텐츠를 추출할 여부를 선언 하도록 MinVersion 및 MaxVersionTested 매개 변수를 사용 되지 않습니다.

모든 플랫폼 (Windows 10 및 비 Windows 10)에 대 한 패키지를 사용 하려는 경우 MinVersion 및 MaxVersionTested 매개 변수를 사용 하 여 앱 작업을 하려는 Windows 10 운영 체제 버전을 지정 하는 것이 좋습니다. 따라서 프로그램 매니페스트가 종속성 섹션은 다음과 같습니다.

  <Dependencies>
    <TargetDeviceFamily Name="Platform.All" MinVersion="0.0.0.0" MaxVersionTested="0.0.0.0"/>
    <TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.14393.0" MaxVersionTested="10.0.16294.0"/>
  </Dependencies>

MinVersion 하 고 MaxVersionTested 매니페스트에 필수 필드 이며 쿼드 notation(#.#.#.#) 준수 해야 합니다. 비 Windows 10 플랫폼용만 MSIX 패키징 SDK를 통해서만 사용할 수 있습니다 단순히 '0.0.0.0'으로 MinVersion 하 고 MaxVersionTested 버전으로 합니다.

사실상 모든 플랫폼 (Windows 10 및 Windows 10이 아닌)에서 동일한 패키지를 사용 하는 방법

대부분의 MSIX 패키징 SDK가 하도록 Windows 10에 동시에 다른 플랫폼에서 지원 되는 앱 패키지와 같은 배포 되는 방식으로 패키지를 만들 수 해야 합니다. Windows 10에서 패키지를 빌드할 수 있습니다는 앱 확장합니다. 앱 확장 및 어떻게 확장할 수 있는 앱을 확인 하는 방법에 대 한 자세한 내용은 참조는 앱 확장 소개 블로그 게시물.

이 문서 앞부분에 표시 된 매니페스트 파일 예에서 확인할 수 있습니다는 속성 내의 요소를 AppExtension 요소입니다. 검사 매니페스트 파일의이 섹션에서는 수행 하지 않습니다. 개발자를 확장 및 호스트/클라이언트 앱 간의 필요한 메타 데이터를 지정할 수 있습니다.