PointOfService 장치 개체PointOfService device objects

디바이스 개체 만들기Creating a device object

새 열거 또는 저장 된 DeviceID에서 사용 하려는 PointOfService 장치를 식별 한 후에는 프로그래밍 방식으로 선택한deviceidFromIdAsync 를 호출 하거나 사용자가 새 서비스 장치 개체를 만들도록 선택 했습니다.Once you have identified the PointOfService device that you want to use, either from a fresh enumeration or a stored DeviceID, you just call FromIdAsync with theDeviceID that you have chosen programmatically or the user has selected to create a new Point of Service device object.

이 샘플은 DeviceID를 사용 하 여 FromIdAsync를 사용 하 여 새 바코드 스캐너 개체를 만들려고 시도 합니다.This sample attempts to create a new BarcodeScanner object with FromIdAsync using a DeviceID. 개체를 만드는 동안 오류가 발생 하는 경우 디버그 메시지가 기록 됩니다.If there is a failure creating the object a debug message is written.


    BarcodeScanner barcodeScanner = await BarcodeScanner.FromIdAsync(DeviceId);

    if(barcodeScanner != null)
    {
        // after successful creation, claim the scanner for exclusive use and enable it to exchange data
    }
    else
    {
        Debug.WriteLine("Failure to create barcodeScanner object");
    }
    

장치 개체를 만들었으면 장치의 메서드, 속성 및 이벤트에 액세스할 수 있습니다.Once you have a device object, you can then access the device's methods, properties and events.

장치 개체 수명 주기Device object lifecycle

Windows 8 이전에는 앱이 간단한 수명 주기를가지고 있습니다.Before Windows 8, apps had a simple lifecycle. Win32 및 .NET 앱이 실행 되 고 있거나 실행 되 고 있지 않으며, 일반적으로 전체 앱 수명 주기에 대 한 서비스 주변 기기가 요청 되었습니다.Win32 and .NET apps are either running or not running and PointOfService peripherals were usually claimed for the full app lifecycle. 사용자가이를 최소화 하거나 다른 위치로 전환 하면 계속 실행 됩니다.When a user minimizes them, or switches away from them, they continue to run. 이는 휴대용 장치 및 전원 관리가 점점 더 중요할 때까지 문제가 되지 않습니다.This was fine until portable devices and power management became increasingly important.

Windows 8에는 UWP 앱과 함께 새로운 응용 프로그램 모델이 도입 되었습니다.Windows 8 introduced a new application model with UWP apps. 높은 수준에서 새 일시 중단 됨 상태가 추가 되었습니다.At a high level, a new suspended state was added. 사용자가 최소화 하거나 다른 앱으로 전환 하면 UWP 앱이 즉시 일시 중단 됩니다.A UWP app is suspended shortly after the user minimizes it or switches to another app. 즉, 응용 프로그램의 스레드가 중지 되 고, 운영 체제에서 리소스를 회수 해야 하는 경우가 아니면 응용 프로그램은 메모리에 남아 있으며, 다른 응용 프로그램에서 주변 장치에 액세스할 수 있도록, PointOfService 주변 장치를 나타내는 모든 장치 개체가 자동으로 닫힙니다.This means that the app's threads are stopped, the app is left in memory unless the operating system needs to reclaim resources, and any device objects representing PointOfService peripherals are automatically closed to allow other applications access to the peripherals. 사용자가 다시 앱으로 전환 하는 경우 다시 시작할 때 계속 제공 되는 경우 실행 중 상태로 신속 하 게 복원 하 고, 서비스 주변 장치 연결을 복원할 수 있습니다.When the user switches back to the app, it can be quickly restored to a running state and restore PointOfService peripherals connections provided they are still available on resume.

를 사용 하 여 어떤 이유로 든 개체가 닫히는 시기를 감지할 수 있습니다 <DeviceObject> . 닫힌 이벤트 처리기는 나중에 연결을 다시 설정 하기 위한 장치 ID를 기록 합니다.You can detect when an object is closed for any reason with a <DeviceObject>.Closed event handler then make note of the device ID for re-establishing the connection in the future. 또는 앱 다시 시작 알림에서 장치 연결을 다시 설정 하기 위한 장치 ID를 저장 하기 위해 앱 일시 중단 알림에서이를 처리할 수 있습니다.Alternatively, you may wish to handle this on an App Suspend notification to save the device ID's for re-establishing the device connections on App Resume notification. 이벤트 처리기에 대 한 두 가지 작업을 수행 하지 않아야 <DeviceObject> 합니다. 닫힘 및 응용 프로그램 일시 중단.Make sure that you do not double up on the event handlers and duplicate actions for the device object on both <DeviceObject>.Closed and App Suspend.

UWP (Windows 10 유니버설 Windows 플랫폼) 응용 프로그램 수명 주기에 대 한 자세한 내용은 다음 항목을 참조 하십시오.Please refer to the following topics for more information about Windows 10 Universal Windows Platform (UWP) application lifecycle: