PointOfService 裝置物件
了解如何建立 PointOfService 裝置物件,讓您能夠存取周邊的唯讀屬性,並宣告周邊,以在 通用 Windows 平台 (UWP) 應用程式中獨佔使用。
建立裝置物件
一旦您從新的列舉或儲存的 DeviceID 中識別出要使用的服務點裝置,您只需使用您以程式設計方式選擇的裝置 ID 或使用者選擇的裝置 ID 呼叫 FromIdAsync 來建立新的服務點裝置物件。
此範例會嘗試使用 DeviceID 建立具有 FromIdAsync 的新 BarcodeScanner 物件。 如果建立物件時發生失敗,就會寫入偵錯訊息。
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");
}
擁有裝置物件之後,您就可以存取裝置的方法、屬性和事件。
裝置物件生命週期
在 Windows 8 之前,應用程式有簡單的生命週期。 Win32 和 .NET 應用程式正在執行或未執行,而 PointOfService 周邊通常會在完整的應用程式生命週期中宣告。 當使用者將他們最小化,或離開它們時,他們就會繼續執行。 這很好,直到便攜式裝置和電源管理變得越來越重要。
Windows 8 引進了具有 UWP 應用程式的新應用程式模型。 概括而言,已新增暫停狀態。 UWP 應用程式會在使用者最小化或切換至另一個應用程式之後不久暫停。 這代表應用程式的執行緒將停止,應用程式將保留在記憶體中,除非作業系統需要回收資源,並且代表 PointOfService 週邊裝置的任何裝置物件都會自動關閉,以允許其他應用程式存取週邊裝置。 當使用者切換回應用程式時,可以快速還原到執行中狀態,並還原 PointOfService 周邊連線,前提是它們仍可在繼續時使用。
您可以使用 <DeviceObject> 偵測物件何時關閉。關閉的事件處理常式接著會記下裝置標識碼,以在未來重新建立連線。 或者,您可能希望在應用程式掛起通知上處理此問題,以保存裝置 ID,以便在應用程式復原通知上重新建立裝置連線。 請確定您不會在事件處理常式上加倍,而且兩個 <DeviceObject> 上的裝置物件重複動作。已關閉並暫停應用程式。
提示
有關 Windows 10 通用 Windows 平台 (UWP) 應用程式生命週期的更多資訊,請參閱以下主題: