UWP 디바이스 앱에 대한 자동 실행

디바이스 제조업체는 UWP 디바이스 앱을 디바이스에 대한 자동 실행 처리기로 지정할 수 있습니다. 또한 다른 UWP 앱이 디바이스에 대한 자동 실행 처리기 역할을 할 수 있습니다. 이 항목에서는 디바이스 메타데이터 작성 마법사를 사용하여 자동 실행을 사용하도록 설정하는 방법을 설명합니다. 또한 앱에서 자동 실행 활성화를 처리하는 방법에 대해서도 설명합니다. 디바이스 앱에 대한 자세한 내용은 UWP 디바이스 앱 모임을 참조 하세요.

참고 항목

모든 유형의 자동 실행에서 디바이스 메타데이터를 사용할 필요는 없습니다. 디바이스 메타데이터가 없으면 자동 실행을 통해 사용자가 디바이스를 PC에 연결할 때 앱을 옵션으로 제공할 수 있습니다. 여기에는 카메라 또는 미디어 플레이어와 같은 볼륨이 아닌 디바이스 또는 USB 썸 드라이브, SD 카드 또는 DVD와 같은 볼륨 디바이스가 포함됩니다. 자동 실행을 사용하면 사용자가 근접(탭)을 사용하여 두 컴퓨터 간에 파일을 공유할 때 앱을 옵션으로 등록할 수도 있습니다. 그러나 디바이스 메타데이터 없이는 앱이 자동으로 설치할 수 없습니다. 디바이스 메타데이터가 필요하지 않은 경우 자동 실행을 사용하는 방법에 대한 자세한 내용은 자동 실행을 사용하여 자동 실행을 참조 하세요.

자동 실행 개요

앱 버전에 따라 다음과 같은 방법으로 자동 실행을 사용하도록 설정할 수 있습니다.

  • UWP 디바이스 앱만 디바이스에 대한 자동 실행 활성화를 처리할 수 있습니다(Windows 8, Windows 8.1에서 지원됨).

  • 다른 UWP 앱은 디바이스에 대한 자동 실행 활성화를 처리할 수 있습니다(Windows 8.1에서만 지원됨).

  • UWP 디바이스 앱 및 기타 UWP 앱은 디바이스에 대한 자동 실행 활성화를 처리할 수 있습니다(Windows 8.1에서만 지원됨).

이 예제에서는 Contoso Pedometer 디바이스에 대한 자동 실행 처리기로 등록된 Contoso 대시보드라는 앱에 대한 자동 실행 대화 상자를 보여줍니다.

example autoplay dialog for a device.

앱에서 디바이스 메타데이터를 사용하는 경우 AutoPlay는 다음 디바이스 유형을 지원합니다.

디바이스 클래스 Windows 8에서 지원되는 자동 실행 Windows 8.1에서 지원되는 자동 실행
디지털 스틸 카메라 autoplay is supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
디지털 비디오 캠코더 autoplay is supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
휴대용 미디어 플레이어 autoplay is supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
휴대폰 autoplay is supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
모바일 광대역 autoplay is not supported for this device class in windows 8. autoplay is not supported for this device class in windows 8.1
웹캠 autoplay is not supported for this device class in windows 8. autoplay is not supported for this device class in windows 8.1
HID(휴먼 인터페이스 장치) autoplay is not supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
프린터, 스캐너, 팩스 autoplay is not supported for this device class in windows 8. autoplay is not supported for this device class in windows 8.1
PC autoplay is not supported for this device class in windows 8. autoplay is not supported for this device class in windows 8.1
스마트 카드 autoplay is not supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
일반 포트 autoplay is not supported for this device class in windows 8. autoplay is supported for this device class in windows 8.1
Bluetooth 디바이스 autoplay is not supported for this device class in windows 8. autoplay is not supported for this device class in windows 8.1

시작하기 전에

  • 디바이스 메타데이터 작성 마법사가 있는지 확인합니다. 자동 실행을 사용하도록 설정하려면 필요합니다. 이 릴리스에서는 이 마법사가 Microsoft Visual Studio Professional 및 Microsoft Visual Studio Ultimate에 포함되어 있습니다. 하지만 Windows용 Microsoft Visual Studio Express가 있는 경우 Windows 8.1용 독립 실행형 SDK를 다운로드하여 마법사를 가져와야 합니다.

  • 앱을 Microsoft Store와 연결합니다. 자동 실행을 사용하려면 앱의 패키지 정보가 필요합니다. 자세한 내용은 1단계: UWP 디바이스 앱 만들기의 Microsoft Store 섹션과 연결 섹션을 참조하세요.

  • 디바이스 메타데이터를 만듭니다. 아직 시작하지 않은 경우 2단계: UWP 디바이스 앱 빌드 단계별 가이드에서 디바이스 메타데이터 만들기를 참조하세요.

자동 실행 사용

디바이스 메타데이터 작성 마법사를 사용하여 UWP 앱을 디바이스의 기본 자동 실행 처리기로 선언할 수 있습니다. 다른 UWP 앱이 디바이스에 대한 자동 실행 처리기 역할을 하게 할 수도 있습니다. 이러한 옵션 또는 두 옵션 중 하나를 선택할 수 있습니다.

디바이스 메타데이터 작성 마법사를 사용하여 자동 실행을 사용하도록 설정하려면**

  1. DeviceMetadataWizard.exe 두 번 클릭하여 %ProgramFiles(x86)%\Windows Kits\8.1\bin\x86에서 디바이스 메타데이터 작성 마법사시작합니다.

  2. 디바이스 메타데이터 편집을 클릭합니다. 이렇게 하면 기존 디바이스 메타데이터 패키지를 편집할 수 있습니다.

  3. 열기 대화 상자에서 UWP 디바이스 앱과 연결된 디바이스 메타데이터 패키지를 찾습니다. (devicemetadata-ms 파일 확장명입니다.)

  4. (선택 사항) 디바이스 앱의 패키지 이름, 게시자 이름 및 앱 ID가 없는 경우 앱 정보를 클릭하여 UWP 디바이스 앱에 대한 패키징 정보를 확인합니다.

  5. Windows 정보를 클릭하여 자동 실행 세부 정보를 지정합니다.

  6. 디바이스의 기본 자동 실행 처리기로 앱을 지정하려면 UWP 디바이스 앱 사용을 선택합니다. UWP 앱 또는 UWP 디바이스 앱을 선택할 수 있지만 해당 앱은 디바이스에 대한 자동 실행 활성화를 처리하고 앱 패키지 매니페스트에서 해당 환경 ID를 지정해야 합니다(다음 절차에서 지정).

    • 패키지 이름: 앱 패키지 매니페스트에서 ID 요소의 Name 특성입니다.

    • 게시자 이름: 앱 패키지 매니페스트에서 ID 요소의 게시자 특성입니다.

    • 앱 ID: 앱 패키지 매니페스트에서 애플리케이션 요소의 ID 특성입니다.

    • 사: 자동 실행 활성화의 식별자입니다. 앱은 이를 사용하여 디바이스에서 활성화되었는지 확인합니다. 예약된 open을 제외하고 동사 설정에 모든 값을 사용할 수 있습니다.

    • 자동 실행 이벤트 유형: 디바이스로 그대로 둡니다. 디바이스 메타데이터에서 마법사는 UWP 디바이스 앱과 연결된 환경 ID를 자동으로 지정합니다.

  7. 다른 앱이 디바이스에 대한 자동 실행 처리기 역할을 하도록 하려면 등록된 앱에 대해 자동 실행 사용을 선택합니다.

  8. 완료되면 다음을 클릭합니다.

  9. 마침 페이지가 표시되면 환경 ID적어 씁니다. 앱에서 자동 실행 활성화를 처리할 때 다음 절차에서 필요합니다.

  10. 저장 정보를 확인하고 저장을 클릭하여 디바이스 메타데이터 패키지를 업데이트합니다.

자동 실행 활성화 처리

앱에서 자동 실행 활성화를 처리하려면 앱 패키지 매니페스트에서 확장을 등록 windows.autoPlayDevice 한 다음 Application 개체의 경우 해당 이벤트를 OnActivated 처리해야 합니다. 앱은 여러 디바이스에 대한 자동 실행 처리기로 등록할 수 있습니다.

자동 실행 처리기로 앱을 등록하려면

디바이스에 대한 자동 실행 처리기로 앱을 등록하려면 UWP 디바이스 앱과 연결된 환경 ID와 앱을 활성화하는 데 사용할 자동 실행 사 및 ActionDisplayName 을 지정해야 합니다.

  1. Microsoft Visual Studio에서 앱의 프로젝트를 엽니다.

  2. 솔루션 탐색기 Package.appxmanifest 파일을 마우스 오른쪽 단추로 클릭하고 코드 보기를 선택합니다. 그러면 XML(텍스트) 편집기에서 앱 패키지 매니페스트가 표시됩니다.

  3. 요소에서 Application 요소 아래에 VisualElements 다음 Extensions 요소를 패키지 매니페스트 파일에 붙여넣습니다.

          <Extensions>
            <Extension Category="windows.autoPlayDevice">
              <AutoPlayDevice>
                <LaunchAction
                    Verb="showDevice1"
                    ActionDisplayName="Launch App for Device 1"
                    DeviceEvent="ExperienceID:{00000000-ABCD-EF00-0000-000000000000}"/>
              </AutoPlayDevice>
            </Extension>
          </Extensions>
    
  4. 이 예제의 자동 실행 값을 앱의 실제 값으로 바꿉다.

    • Verb: 자동 실행 활성화의 식별자입니다. 앱은 이를 사용하여 디바이스에서 활성화되었는지 확인합니다. 앱이 디바이스의 기본 자동 실행 처리기로 지정된 경우 이 값은 디바이스 메타데이터에서 지정한 동사와 일치해야 합니다. 앱이 디바이스의 기본 자동 실행 처리기로 지정되지 않은 경우 예약된 open을 제외하고 동사 설정에 대한 모든 값을 사용할 수 있습니다.

    • ActionDisplayName: 자동 실행에서 앱에 대해 표시하는 문자열입니다.

    • Experience ID: 앱을 디바이스와 연결하는 환경 ID GUID입니다. 이전 절차에서 적어 두는 값입니다.

자동 실행 활성화를 처리하려면

디바이스에서 자동 실행 활성화를 트리거하면 활성화 종류가 됩니다 Windows.ApplicationModel.Activation.ActivationKind.device. 전달된 개체를 사용하여 앱이 eventObj 활성화된 OnActivated 방법을 검사. 자동 실행의 경우 활성화를 발생시킨 디바이스 ID 및 자동 실행 동사를 확인하는 데 사용할 eventObj 수 있습니다.

이 예제에서 활성화 이벤트 매개 변수(eventObj)는 활성화를 위한 동사와 디바이스의 ID를 전달합니다.

<!DOCTYPE html>
<html>
<head>
  <script type="text/javascript">
    function OnActivated(eventObj) {
        if (eventObj.kind == Windows.ApplicationModel.Activation.ActivationKind.launch) {
            // Activated by the user.
        }
        else if (eventObj.kind == Windows.ApplicationModel.Activation.ActivationKind.device) {
            // Activated by a device, for AutoPlay.
            // Device path = eventObj.deviceInformationId;
            // verb ("showDevice1") = eventObj.verb;
        }
    }

    Windows.UI.WebUI.WebUIApplication.addEventListener("activated", OnActivated, false);
  </script>
</head>

<body>
...
...
...
</body>
</html>

UWP 디바이스 앱 충족

UWP 디바이스 앱 단계별 빌드

자동 실행을 사용한 자동 시작

Launching, resuming, and multitasking