다음을 통해 공유


Universal Windows Platform 앱에 장치 기능 사용 설정하기

이 항목은 Universal Windows Platform(UWP) 앱에 카메라, 마이크, 위치 센서 및 기타 장치를 사용하도록 Microsoft Visual Studio에서 장치 기능을 선언하는 방법을 설명합니다.

앱에서 사용할 장치 기능 지정하기

Windows 앱은 특정 형식의 장치를 사용할 때 앱 패키지 매니페스트에서 지정해야 합니다. Visual Studio에서는 매니페스트 디자이너를 사용하여 대부분의 기능을 선언하거나 (수동으로) 패키지 매니페스트에서 장치 기능을 지정하는 방법에 설명된 대로 수동으로 추가할 수 있습니다. 이 자습서에서는 매니페스트 디자이너를 사용 중이라고 가정합니다.

참고

프린터, 스캐너 및 센서와 같은 일부 유형의 장치는 앱 패키지 매니페스트에서 선언할 필요가 없습니다.

  • Visual Studio 솔루션 탐색기에서 패키지 매니페스트 파일 Package.appxmanifest를 두 번 클릭합니다.
  • 기능 탭을 엽니다.
  • 앱이 사용하는 장치 기능을 선택합니다. 매니페스트 디자이너에서 찾고 있는 기능이 표시되지 않으면 수동으로 추가합니다. 자세한 정보는 패키지 매니페스트에 디바이스 기능을 지정하는 방법을 참조하세요.
디바이스 기능 매니페스트 디자이너 설명
AllJoyn 매니페스트 디자이너에서 사용 가능 네트워크의 AllJoyn 사용 앱 및 장치가 서로를 검색하고 상호 작용할 수 있습니다. Windows.Devices.AllJoyn 네임스페이스의 API에 액세스하는 모든 앱은 이 기능을 사용해야 합니다.
차단된 채팅 메시지 매니페스트 디자이너에서 사용 가능 앱은 스팸 필터 앱에 의해 차단된 SMS 및 MMS 메시지를 읽을 수 있습니다.
채팅 메시지 액세스 매니페스트 디자이너에서 사용 가능 앱에서 문자 메시지를 읽고 삭제할 수 있습니다. 또한 앱에서 채팅 메시지를 시스템 데이터 저장소에 저장할 수 있도록 허용합니다.
코드 생성 매니페스트 디자이너에서 사용 가능 앱에서 동적으로 코드를 생성할 수 있습니다.
엔터프라이즈 인증 매니페스트 디자이너에서 사용 가능 이 기능에는 Microsoft Store 정책이 적용됩니다. 이 기능은 도메인 자격 증명이 필요한 엔터프라이즈 인트라넷 리소스에 연결하는 기능을 제공합니다. 일반적으로 이 기능은 대부분의 앱에 필요하지 않습니다.
인터넷(클라이언트) 매니페스트 디자이너에서 사용 가능 공항, 커피숍 등의 인터넷 및 공공 장소의 네트워크에 대한 아웃바운드 액세스를 제공합니다. 예를 들어 사용자가 네트워크를 공용으로 지정한 인트라넷 네트워크입니다. 인터넷 액세스가 필요한 대부분의 앱은 해당 기능을 사용해야 합니다.
인터넷(클라이언트 & 서버) 매니페스트 디자이너에서 사용 가능 공항, 커피숍 등의 공공 장소의 인터넷 및 네트워크에 대한 인바운드 액세스를 제공합니다. 이 기능은 인터넷(클라이언트)의 상위 집합입니다. 이 기능도 사용하도록 설정된 경우 인터넷(클라이언트)을 사용하도록 설정할 필요가 없습니다. 중요 포트에 대한 인바운드 액세스는 항상 차단됩니다.
위치 매니페스트 디자이너에서 사용 가능 현재 위치에 대한 액세스 권한을 제공합니다. 이는 PC의 GPS 센서와 같은 전용 하드웨어에서 얻거나 사용 가능한 네트워크 정보에서 파생됩니다.
마이크 매니페스트 디자이너에서 사용 가능 마이크의 오디오 피드에 대한 액세스 권한을 제공합니다. 이렇게 하면 앱이 연결된 마이크에서 녹음할 수 있습니다.
음악 라이브러리 매니페스트 디자이너에서 사용 가능 로컬 PC 및 HomeGroup PC용 음악 라이브러리에서 파일을 추가, 변경 또는 삭제하는 기능을 제공합니다.
개체 3D 매니페스트 디자이너에서 사용 가능 사용자의 3D 개체에 프로그래밍 방식으로 액세스할 수 있도록 하므로 앱이 라이브러리의 모든 파일을 사용자 조작 없이 열거하고 액세스할 수 있습니다. 이 기능은 주로 전체 3D 개체 라이브러리에 액세스해야 하는 3D 앱과 게임에서 사용됩니다.
전화 통화 매니페스트 디자이너에서 사용 가능 앱에서 디바이스의 모든 전화선에 액세스하고 다음 기능을 수행할 수 있습니다. 전화를 걸고 사용자에게 메시지를 표시하지 않고 시스템 전화 걸기를 표시합니다. 액세스 줄 관련 메타데이터. 줄 관련 트리거에 액세스합니다. 사용자가 선택한 스팸 필터 앱이 차단 목록 및 통화 발신 정보를 설정하고 확인할 수 있도록 합니다.
사진 라이브러리 매니페스트 디자이너에서 사용 가능 로컬 PC 및 HomeGroup PC용 사진 라이브러리에서 파일을 추가, 변경 또는 삭제하는 기능을 제공합니다.
서비스 포인트 매니페스트 디자이너에서 사용 가능 서비스 포인트 주변 장치에 대한 액세스를 제공합니다. 이 기능은 Windows.Devices.PointOfService 네임스페이스의 API에 액세스하는 데 필요합니다.
프라이빗 네트워크(클라이언트 & 서버) 매니페스트 디자이너에서 사용 가능 사용자가 홈 또는 회사 네트워크로 지정한 인트라넷 네트워크하거나 인증된 도메인 컨트롤러가 있는 인트라넷 네트워크에 대한 인바운드 및 아웃바운드 액세스를 제공합니다. 중요 포트에 대한 인바운드 액세스는 항상 차단됩니다.
근접 매니페스트 디자이너에서 사용 가능 NFC(근거리 통신)를 통해 PC와 가까운 곳에 있는 장치에 연결하는 기능을 제공합니다. 근거리 근접 연결을 사용하여 파일을 보내거나 근처 장치의 앱과 통신할 수 있습니다.
이동식 스토리지 매니페스트 디자이너에서 사용 가능 이동식 스토리지 디바이스에서 파일을 추가, 변경 또는 삭제하는 기능을 제공합니다. 앱은 파일 형식 연결 선언을 사용하여 매니페스트에 정의된 이동식 스토리지의 파일 형식에만 액세스할 수 있습니다 . 앱은 HomeGroup PC의 이동식 스토리지에 액세스할 수 없습니다.
공유 사용자 인증서 매니페스트 디자이너에서 사용 가능 이 기능에는 Microsoft Store 정책이 적용됩니다. 사용자 ID의 유효성을 검사하기 위해 스마트 카드 인증서와 같은 소프트웨어 및 하드웨어 인증서에 액세스하는 기능을 제공합니다. 런타임에 관련 API가 호출되면 사용자는 작업을 수행해야 합니다(카드 삽입, 인증서 선택 등). 이 기능은 앱에 인증서 선언을 통한 프라이빗 인증서가 포함된 경우에는 필요하지 않습니다.
사용자 계정 정보 매니페스트 디자이너에서 사용 가능 앱에 사용자의 이름과 사진에 액세스할 수 있는 기능을 제공합니다. Windows.System.UserProfile 네임스페이스에서 일부 API에 액세스하려면 이 기능이 필요합니다.
비디오 라이브러리 매니페스트 디자이너에서 사용 가능 로컬 PC 및 HomeGroup PC용 비디오 라이브러리에서 파일을 추가, 변경 또는 삭제하는 기능을 제공합니다.
VOIP 호출 매니페스트 디자이너에서 사용 가능 앱이 Windows.ApplicationModel.Calls 네임스페이스의 VOIP 호출 API에 액세스할 수 있도록 허용합니다.
웹캠 매니페스트 디자이너에서 사용 가능 기본 제공 카메라 또는 연결된 웹캠의 비디오 피드에 대한 액세스를 제공합니다. 이를 통해 앱은 스냅샷 및 영화를 캡처할 수 있습니다.
USB 사용자 지정 USB 장치에 대한 액세스를 제공합니다. 이 기능에는 자식 요소가 필요합니다. 이 기능은 Windows Phone에서는 지원되지 않습니다.
휴먼 인터페이스 장치(HID) 휴먼 인터페이스 장치(HID)에 대한 액세스를 제공합니다. 이 기능에는 자식 요소가 필요합니다. 자세한 정보는 HID에 대한 장치 기능을 지정하는 방법을 참조하세요.
Bluetooth GATT Bluetooth LE 장치에 대한 액세스를 기본 서비스, 포함된 서비스, 특성 및 설명자 컬렉션을 통해 제공합니다. 이 기능에는 자식 요소가 필요합니다. 자세한 정보는 Bluetooth에 대한 장치 기능을 지정하는 방법을 참조하세요.
Bluetooth RFCOMM BR/EDR(기본 속도/확장된 데이터 속도) 전송을 지원하는 API에 대한 액세스를 제공하고, 또한 UWP 앱이 SPP(직렬 포트 프로필)를 구현하는 장치에 액세스할 수 있습니다. 이 기능에는 자식 요소가 필요합니다. 자세한 정보는 Bluetooth에 대한 장치 기능을 지정하는 방법을 참조하세요.

Windows 런타임 API를 사용하여 디바이스와 통신하기

다음의 테이블은 일부 기능을 Windows 런타임 API에 연결합니다.

디바이스 기능 API
AllJoyn Windows.Devices.AllJoyn
차단된 채팅 메시지 Windows.ApplicationModel.CommunicationBlocking
위치 자세한 정보는 지도 및 위치 개요를 참조하세요.
전화 통화 Windows.ApplicationModel.Calls
사용자 계정 정보 Windows.System.UserProfile
VOIP 호출 Windows.ApplicationModel.Calls
USB Windows.Devices.Usb
HID Windows.Devices.HumanInterfaceDevice
Bluetooth GATT Windows.Devices.Bluetooth.GenericAttributeProfile
Bluetooth RFCOMM Windows.Devices.Bluetooth.Rfcomm
서비스 포인트 Windows.Devices.PointOfService