수동으로 앱 설치 관리자 파일 만들기

이 문서에서는 autoupdating 및 복구 기능을 사용 하 여 관련 집합 을 정의 하는 앱 설치 관리자 파일을 수동으로 만드는 방법을 보여 줍니다. 관련 집합은 하나의 엔터티가 아니라 주 패키지와 선택적 패키지의 조합입니다.

관련 집합을 하나의 엔터티로 설치할 수 있으려면 주 패키지와 선택적 패키지를 하나로 지정할 수 있어야 합니다. 이렇게 하려면 appinstaller 확장을 사용 하 여 XML 파일을 만들어 관련 집합을 정의 해야 합니다. 앱 설치 관리자는 *. appinstaller 파일을 사용 하 여 사용자가 한 번의 클릭으로 정의 된 모든 패키지를 설치할 수 있도록 합니다.

배포 하는 동안 앱 설치 관리자 파일은 다음을 수행 합니다.

  • mainpackage 요소의 특성에서 참조 되는 Windows 앱 패키지는의 URI< 유효성을 검사 하 >NamePublisherVersion 대상 Windows 앱 패키지 특성의 유효성을 검사 합니다. Windows 앱 패키지 매니페스트의 package/Identity 요소가 일치 하지 않는 경우 설치가 실패 합니다.
  • 패키지 패밀리의 업데이트 및 복구 Uri에 대 한 참조를 만듭니다.

앱 설치 관리자 파일을 만드는 방법

관련 집합을 하나의 엔터티로 배포 하려면 해당 앱 설치 관리자 스키마에 필요한 요소가 포함 된 앱 설치 관리자 파일을 만들어야 합니다.

  1. *를 만듭니다. AppInstaller 파일입니다.
  2. 앱 설치 관리자 파일 특성을 지정 합니다.
  3. 주 Windows 앱 패키지를 지정 합니다.
  4. 관련 집합 옵션 패키지를 지정 합니다.
  5. 종속성 Windows 앱 프레임 워크 패키지를 지정 합니다.
  6. 업데이트 URI 경로를 지정 합니다.
  7. 복구 URI 경로를 지정 합니다.
  8. 업데이트 설정를 지정 합니다.
앱 설치 관리자 파일의 예

위에 제공 된 단계를 수행 하 여 다음과 유사한 앱 설치 관리자 파일을 성공적으로 만들었습니다.

<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
    xmlns="http://schemas.microsoft.com/appx/appinstaller/2017/2"
    Version="1.0.0.0"
    Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >

    <MainBundle
        Name="Contoso.MainApp"
        Publisher="CN=Contoso"
        Version="2.23.12.43"
        Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />

    <OptionalPackages>
        <Bundle
            Name="Contoso.OptionalApp1"
            Publisher="CN=Contoso"
            Version="2.23.12.43"
            Uri="http://mywebservice.azurewebsites.net/OptionalApp1.msixbundle" />

        <Bundle
            Name="Contoso.OptionalApp2"
            Publisher="CN=Contoso"
            Version="2.23.12.43"
            Uri="http://mywebservice.azurewebsites.net/OptionalApp2.msixbundle" />

        <Package
            Name="Fabrikam.OptionalApp3"
            Publisher="CN=Fabrikam"
            Version="10.34.54.23"
            Uri="http://mywebservice.azurewebsites.net/OptionalApp3.msix"
            ProcessorArchitecture="x64" />
    </OptionalPackages>

    <UpdateURIs>
        <UpdateURI>http://mywebservice.azurewebsites.net/appset.appinstaller</UpdateURI>
        <UpdateURI>http://mywebservice2.azurewebsites.net/appset.appinstaller</UpdateURI>
    </UpdateURIs>

    <RepairURIs>
        <RepairURI>http://mywebservice.azurewebsites.net/appset.appinstaller</RepairURI>
        <RepairURI>http://mywebservice2.azurewebsites.net/appset.appinstaller</RepairURI>
    </RepairURIs>

    <UpdateSettings>
        <OnLaunch HoursBetweenUpdateChecks="0"/>   
    </UpdateSettings>

</AppInstaller>

1 단계: *. appinstaller 파일 만들기

텍스트 편집기 (Notepad.exe)를 사용 하 여 *의 파일 이름 확장명을 사용 하 여 새 파일을 만듭니다. AppInstaller

방법:
  1. 시작 메뉴를 엽니다.
  2. 다음을 입력 notepad.exe 합니다.
  3. 파일 메뉴를 엽니다.
  4. 드롭다운 메뉴에서 다른 이름으로 저장을 선택 합니다.

2 단계: 기본 템플릿 추가

앱 설치 AppInstaller 관리자 파일의 버전, 경로 및 네트워크 위치를 기록 하는 앱 설치 관리자 파일에 요소를 포함 합니다. 요소의 정보는 AppInstaller 연결 된 Windows 앱을 설치할 때 사용 됩니다.

요소 설명
xmlns XML 네임 스페이스
Version 4 점 표기법 (1.0.0.0)으로 된 앱 설치 관리자 파일의 버전입니다.
URI 장치에서 액세스할 수 있는 현재 앱 설치 관리자 파일의 URI 경로입니다.
방법:
  1. 1 단계에서 만든 파일을 엽니다.

  2. 다음 XML 콘텐츠를 *에 복사 합니다. AppInstaller 파일입니다.

    <?xml version="1.0" encoding="utf-8"?>
    <AppInstaller
        xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
        Version=""
        Uri="" >
    </AppInstaller>
    
  3. 특성을 Version 앱 설치 관리자 파일의 버전으로 업데이트 합니다.

  4. URI이 *를 사용 하는 네트워크 위치를 사용 하 여 특성을 업데이트URI 파일은에서 액세스할 수 있습니다.

3 단계: 주 패키지 정보 추가

<MainPackage>및는 <MainBundle> 응용 프로그램 설치 관리자 파일을 사용 하 여 설치 되는 기본 Windows 앱을 식별 하는 데 사용 됩니다. 는 <MainPackage> Windows 앱 설치 관리자가 *<MainPackage>또는 *.appx인 경우 사용 됩니다. <MainBundle>Windows 앱 설치 관리자가 *<MainBundle>또는 *.appxbundle확장명을 포함 하는 번들 Windows 앱 설치 관리자 인 경우를 사용 합니다.

요소 Description
Name 앱 설치 관리자 파일을 통해 배포 되는 기본 응용 프로그램의 이름입니다. 이는 다음 PowerShell cmdlet을 실행 하 여 찾을 수 있습니다 $(Get-AppxPackage [AppName]).Name .
게시자 기본 Windows 앱 설치 관리자에 서명 하는 데 사용 되는 게시자 인증서의 정식 이름입니다. 이는 다음 PowerShell cmdlet을 실행 하 여 찾을 수 있습니다 $(Get-AppxPackage [AppName]).Publisher .
버전 기본 Windows 앱 설치 관리자의 버전은 쿼드 점 표기법 (1.0.0.0)으로 되어 있습니다. 이는 다음 PowerShell cmdlet을 실행 하 여 찾을 수 있습니다 $(Get-AppxPackage [AppName]).Version .
ProcessorArchitecture 기본 Windows 앱 설치 관리자가 설치 되는 아키텍처입니다.
URI 기본 Windows 앱 설치 미디어에 대 한 URI 경로입니다.

또는 특성의 정보 <MainBundle><MainPackage> 각각 앱 번들 매니페스트 또는 앱 패키지 매니페스트의 <MainBundle> 요소와 일치 해야 합니다.

Windows 앱 설치 관리자

주 앱 패키지가. msix 또는 .appx 파일이 면 <MainPackage> 아래와 같이을 사용 합니다. 비 번들 패키지의 필수 항목 이므로 ProcessorArchitecture를 포함 해야 합니다.

<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
    xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
    Version="1.0.0.0"
    Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >

    <MainPackage
        Name="Contoso.MainApp"
        Publisher="CN=Contoso"
        Version="2.23.12.43"
        ProcessorArchitecture="x64"
        Uri="http://mywebservice.azurewebsites.net/mainapp.msix" />

</AppInstaller>
Windows 앱 번들 설치 관리자

주 앱 패키지가. msixbundle 또는 .appxbundle 또는 파일인 경우 <MainBundle> 아래와 같이 대신를 사용 합니다 <MainPackage> . 번들의 경우 ProcessorArchitecture이 필요 하지 않습니다.

<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
    xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
    Version="1.0.0.0"
    Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >

    <MainBundle
        Name="Contoso.MainApp"
        Publisher="CN=Contoso"
        Version="2.23.12.43"
        Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />

</AppInstaller>

4 단계: 선택적 패키지 추가

주 앱 패키지 특성과 마찬가지로 선택적 패키지가 앱 패키지 또는 앱 번들 일 수 있는 경우 특성 내의 자식 요소는 <OptionalPackages><Package> 각각 또는 여야 합니다 <Bundle> . 자식 요소의 패키지 정보는 번들 또는 패키지 매니페스트의 identity 요소와 일치 해야 합니다.

요소 Description
Name 앱 설치 관리자 파일을 통해 배포 되는 선택적 응용 프로그램의 이름입니다. 이는 다음 PowerShell cmdlet을 실행 하 여 찾을 수 있습니다 $(Get-AppxPackage [AppName]).Name .
게시자 선택적 Windows 앱 설치 관리자에 서명 하는 데 사용 되는 게시자 인증서의 정식 이름입니다. 이는 다음 PowerShell cmdlet을 실행 하 여 찾을 수 있습니다 $(Get-AppxPackage [AppName]).Publisher .
버전 선택적 Windows 앱 설치 관리자의 버전 (1.0.0.0) (4 점 표기법) 이는 다음 PowerShell cmdlet을 실행 하 여 찾을 수 있습니다 $(Get-AppxPackage [AppName]).Version .
ProcessorArchitecture 선택적 Windows app installer가 설치 되는 아키텍처입니다.
URI 기본 Windows 앱 설치 미디어에 대 한 URI 경로입니다.
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
    xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
    Version="1.0.0.0"
    Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >

    <MainBundle
        Name="Contoso.MainApp"
        Publisher="CN=Contoso"
        Version="2.23.12.43"
        Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />

    <OptionalPackages>
        <Bundle
            Name="Contoso.OptionalApp1"
            Publisher="CN=Contoso"
            Version="2.23.12.43"
            Uri="http://mywebservice.azurewebsites.net/OptionalApp1.msixbundle" />

        <Package
            Name="Fabrikam.OptionalApp3"
            Publisher="CN=Fabrikam"
            Version="10.34.54.23"
            ProcessorArchitecture="x64"
            Uri="http://mywebservice.azurewebsites.net/OptionalApp3.msix" />

    </OptionalPackages>

</AppInstaller>

5 단계: 종속성 추가

종속성 요소에서 주 패키지 또는 선택적 패키지에 필요한 프레임 워크 패키지를 지정할 수 있습니다.

요소 Description
Name 앱 설치 관리자 파일을 통해 배포 되는 종속성 응용 프로그램의 이름입니다. 이는 다음 PowerShell cmdlet을 실행 하 여 찾을 수 있습니다 $(Get-AppxPackage [AppName]).Name .
게시자 종속성 Windows 앱 설치 관리자에 서명하는 데 사용되는 게시자 인증서의 정식 이름입니다. PowerShell cmdlet을 실행하여 찾을 수 $(Get-AppxPackage [AppName]).Publisher 있습니다.
버전 쿼드 점 표기법(1.0.0.0)의 종속성 Windows 앱 설치 관리자 버전입니다. PowerShell cmdlet을 실행하여 찾을 수 $(Get-AppxPackage [AppName]).Version 있습니다.
ProcessorArchitecture 종속성 Windows 앱 설치 관리자가 설치하는 아키텍처입니다.
URI 앱 설치 미디어에 Windows 종속성에 대한 URI 경로입니다.
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
    xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
    Version="1.0.0.0"
    Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >

    <MainBundle
        Name="Contoso.MainApp"
        Publisher="CN=Contoso"
        Version="2.23.12.43"
        Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />

    <Dependencies>
        <Package 
            Name="Microsoft.VCLibs.140.00" 
            Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" 
            Version="14.0.24605.0" ProcessorArchitecture="x86" Uri="http://foobarbaz.com/fwkx86.appx" />
        <Package 
            Name="Microsoft.VCLibs.140.00" 
            Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" 
            Version="14.0.24605.0" 
            ProcessorArchitecture="x64" 
            Uri="http://foobarbaz.com/fwkx64.appx" />
    </Dependencies>

</AppInstaller>

6단계: 업데이트 설정 추가

앱 설치 관리자 파일은 최신 앱 설치 관리자 파일이 게시될 때 관련 집합을 자동으로 업데이트할 수 있도록 업데이트 설정을 지정할 수도 있습니다. 는 선택적 요소입니다. OnLaunch 옵션 내에서 앱 시작 시 업데이트 검사를 수행해야 하며 HoursBetweenUpdateChecks="12"는 12시간마다 업데이트 검사를 수행해야 한다고 지정합니다. HoursBetweenUpdateChecks를 지정하지 않으면 업데이트를 확인하는 데 사용되는 기본 간격은 24시간입니다. 백그라운드 업데이트와 같은 추가 업데이트 유형은 업데이트 설정 스키마에서 찾을 수 있습니다. 프롬프트가 있는 업데이트와 같은 추가 유형의 시작 시 업데이트는 OnLaunch 스키마에서 찾을 수 있습니다.

요소 설명
HoursBetweenUpdateChecks Windows 앱 업데이트 검사의 최소 간격을 정의합니다.
UpdateBlocksActivation 앱 업데이트를 확인할 때의 환경을 정의합니다.
ShowPrompt 업데이트가 설치될 때 창이 표시되는지와 업데이트가 확인되는 시기를 정의합니다.
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
    xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
    Version="1.0.0.0"
    Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >

    <MainBundle
        Name="Contoso.MainApp"
        Publisher="CN=Contoso"
        Version="2.23.12.43"
        Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />

    <UpdateSettings>
        <OnLaunch 
            HoursBetweenUpdateChecks="12"
            UpdateBlocksActivation="true"
            ShowPrompt="true" />
        <AutomaticBackgroundTask />
        <ForceUpdateFromAnyVersion>true</ForceUpdateFromAnyVersion>
    </UpdateSettings>

</AppInstaller>

7단계: 자동 업데이트 설정 추가

중요

다음 설정은 Windows 10 Windows 참가자 빌드에서 2021 스키마를 사용하는 경우에만 사용할 수 있습니다.

앱 설치 관리자 파일과 함께 설치된 Windows 앱은 기본적으로 앱 설치 관리자 URI에서 Windows 앱을 업데이트하고 이전 단계에서 설정한 구성을 준수합니다. 이 단계에서 구성된 업데이트 URI는 원래 앱 설치 관리자 URI에 더 이상 액세스할 수 없는 경우 사용할 수 있는 대체 URI로 작동합니다. 모든 Windows 앱에 대해 최대 10개 업데이트 URI를 구성할 수 있습니다.

업데이트 URI는 앱 설치 관리자 파일을 대상으로 해야 합니다.

참고

이러한 설정은 스키마가 2021 이상으로 구성된 경우에만 작동합니다.

<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
    xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
    Version="1.0.0.0"
    Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >

    <MainBundle
        Name="Contoso.MainApp"
        Publisher="CN=Contoso"
        Version="2.23.12.43"
        Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />

    <UpdateSettings>
        <OnLaunch 
            HoursBetweenUpdateChecks="12" />
    </UpdateSettings>

    <UpdateUris>
        <UpdateUri>https://www.contoso.com/Installers/MainApp.AppInstaller</UpdateUri>
        <UpdateUri>\\ServerName\Share\Installers\MainApp.AppInstaller</UpdateUri>
    </UpdateUris>

</AppInstaller>

8단계: 자동 복구 설정 추가

중요

다음 설정은 Windows 10 Windows 참가자 빌드에서 2021 스키마를 사용하는 경우에만 사용할 수 있습니다.

디바이스에 설치된 Windows 앱은 변조되었을 때 Windows 앱의 자동 복구를 지원할 수 있습니다. Windows 앱을 복구하는 데 사용할 원본 설치 관리자를 속성을 사용하여 구성할 수 <RepairURIs> 있습니다. Windows 앱은 앱 설치 관리자 URI를 기반으로 자체 복구를 시도합니다. 액세스할 수 없는 경우 Windows 앱은 복구 URI를 사용하여 복구 원본을 식별합니다. 모든 Windows 앱에 대해 최대 10개 복구 URI를 구성할 수 있습니다.

복구 URI는 Windows 앱 또는 앱 설치 관리자 파일을 대상으로 할 수 있습니다. 이 설정에서는 앱 설치 관리자 파일을 사용하여 Windows 앱을 설치할 필요가 없습니다.

<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
    xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
    Version="1.0.0.0"
    Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >

    <MainBundle
        Name="Contoso.MainApp"
        Publisher="CN=Contoso"
        Version="2.23.12.43"
        Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />

    <UpdateSettings>
        <OnLaunch 
            HoursBetweenUpdateChecks="12" />
    </UpdateSettings>

    <RepairUris>
        <RepairUri></RepairUri>
        <RepairUri></RepairUri>
    </RepairUris>

</AppInstaller>

XML 스키마에 대한 모든 세부 정보는 앱 설치 관리자 파일 참조 를 참조하세요.

참고

앱 설치 관리자 파일 형식은 Windows 10 버전 1709(Windows 10 Fall Creators Update)의 새로운 형식입니다. 이전 버전의 Windows 10 앱 설치 관리자 파일을 사용하는 Windows 10 앱의 배포는 지원되지 않습니다. HoursBetweenUpdateChecks 요소는 Windows 10 버전 1803부터 사용할 수 있습니다.