UWP 개발, 마이크로소프트 스토어에 올리지 않고 배포하기

UWP(Universal Windows Platform)는 다양한 Windows 10 장치에서 실행할 수 있는 애플리케이션을 쉽게 개발할 수 있도록 해주는 강력한 플랫폼입니다. 많은 개발자들이 마이크로소프트 스토어에 애플리케이션을 게시하여 배포하지만, 특정 상황에서는 다른 방법으로 애플리케이션을 배포해야 할 필요가 있습니다. 이번 글에서는 UWP 애플리케이션을 마이크로소프트 스토어에 올리지 않고 배포하는 방법에 대해 자세히 설명하겠습니다.

1. UWP 개발 환경 설정하기

UWP 애플리케이션 개발을 시작하기 전에, Visual Studio와 Windows 10 SDK를 설치해야 합니다. 최신 버전의 Visual Studio가 설치되어 있어야 하며, UWP 개발 워크로드를 선택하여 설치합니다.

1. Visual Studio를 다운로드하고 설치합니다.
2. 설치 중 "워크로드" 섹션에서 "UWP 개발"을 선택합니다.
3. Windows 10 SDK가 자동으로 설치됩니다.

2. 애플리케이션 개발

UWP 애플리케이션을 개발하는 과정은 다음과 같습니다.

2.1. 신규 프로젝트 생성

1. Visual Studio를 실행합니다.
2. "새 프로젝트 만들기"를 클릭합니다.
3. "UWP"를 검색하고 "빈 앱"을 선택합니다.
4. 프로젝트 이름과 저장 위치를 입력한 후, "만들기"를 클릭합니다.

2.2. 기본 UI 구성

빈 앱을 만들면 기본적인 App.xaml과 MainPage.xaml 파일이 생성됩니다. 여기서 MainPage.xaml 파일에 첫 번째 UI 구성 요소를 추가해봅시다.

<Page
    x:Class="MyApp.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:MyApp">

    <Grid>
        <Button Content="Click Me" Click="Button_Click"/>
    </Grid>
</Page>

위 코드에서 버튼을 추가하고, 클릭 이벤트를 처리하기 위해 이벤트 핸들러를 설정합니다.

2.3. 이벤트 핸들러 구현

private void Button_Click(object sender, RoutedEventArgs e)
{
    var dialog = new MessageDialog("Button was clicked!");
    await dialog.ShowAsync();
}

2.4. 앱 실행 및 테스트

F5 키를 눌러 앱을 실행하고, 버튼을 클릭해 다이얼로그가 나타나는지 확인합니다.

3. UWP 애플리케이션 배포 방법

UWP 애플리케이션을 마이크로소프트 스토어에 게시하지 않고 배포하는 방법에는 여러 가지가 있습니다. 그 중 가장 일반적인 방법은 App Package를 생성하여 사용하거나, sideloading을 사용하는 것입니다.

3.1. App Package 생성

1. Visual Studio에서 "빌드" 메뉴를 클릭합니다.
2. "프로젝트 빌드"를 선택하여 애플리케이션을 빌드합니다.
3. "파일" 메뉴 -> "게시" -> "애플리케이션 패키지 만들기"를 선택합니다.
4. 패키지 생성 마법사를 따라 필요한 정보를 입력하고, 최종적으로 패키지를 생성합니다.

생성된 App Package는 .appx 또는 .msix 파일 형태로 제공됩니다. 이 파일을 사용하여 다른 장치에 설치할 수 있습니다.

3.2. Sideloading을 통한 설치

Sideloading은 UWP 앱을 마이크로소프트 스토어를 거치지 않고 설치할 수 있는 방법입니다. 이를 위해서는 개발자 모드가 활성화되어 있어야 합니다.

1. Windows 설정을 엽니다.
2. "업데이트 및 보안" > "개발자 옵션"으로 이동합니다.
3. "개발자 모드"를 활성화합니다.

이제 Sideloading 준비가 완료되었습니다. 생성된 App Package를 설치하려면, PowerShell을 사용하여 다음 명령어를 실행합니다.

Add-AppxPackage -Path "C:\path\to\yourpackage.appx"

3.3. PowerShell을 이용한 배포

PowerShell을 사용하여 선택한 여러 장치에 UWP 앱을 배포할 수 있습니다. 적절한 권한이 있는 관리자 계정으로 PowerShell을 실행하고, 다음과 같은 명령어를 사용할 수 있습니다.

Invoke-Command -ComputerName "TargetPC" -ScriptBlock {
    Add-AppxPackage -Path "C:\path\to\yourpackage.appx"
}

4. 패키징 및 서명

UWP 앱을 안전하게 배포하려면, 이러한 App Package에는 디지털 서명이 필요합니다. 배열된 앱으로 추가적인 보안 강화가 가능합니다. 서명을 위해서는 인증서를 생성하고 해당 인증서를 사용하여 패키지를 서명합니다.

1. MakeCert.exe를 사용하여 인증서를 생성합니다.
2. SignTool.exe를 사용하여 패키지에 서명합니다.

5. 결론

UWP 애플리케이션을 마이크로소프트 스토어에 올리지 않고 배포하는 방법에 대해 알아보았습니다. App Package 생성 및 sideloading 방법으로 배포할 수 있으며, PowerShell을 통해 여러 장치에 실시할 수 있습니다. 각 비즈니스 환경과 필요에 맞는 적절한 배포 방법을 선택하여 보다 효과적으로 UWP 애플리케이션을 사용할 수 있습니다.

6. 추가 자료

이와 같은 배포 방법은 개발 환경이나 비즈니스 요구에 따라 다양하게 활용될 수 있습니다. UWP 개발의 심화 과정으로, 여러분의 프로젝트에 효과적으로 적용해 보시기 바랍니다.