Freigeben über


PointOfService-Geräteobjekte

Erfahren Sie, wie Sie ein PointOfService-Geräteobjekt erstellen, das Ihnen Zugriff auf schreibgeschützte Eigenschaften des Peripheriegeräts ermöglicht und das Peripheriegerät für die exklusive Verwendung in einer Universelle Windows-Plattform -Anwendung (UWP) beansprucht.

Erstellen eines Geräteobjekts

Nachdem Sie das PointOfService-Gerät identifiziert haben, das Sie verwenden möchten, entweder aus einer neuen Enumeration oder einer gespeicherten DeviceID, rufen Sie einfach FromIdAsync mit derDeviceID auf, die Sie programmgesteuert ausgewählt haben, oder der Benutzer hat ausgewählt, ein neues Point of Service-Geräteobjekt zu erstellen.

In diesem Beispiel wird versucht, ein neues BarcodeScanner-Objekt mit FromIdAsync mithilfe einer DeviceID zu erstellen. Wenn beim Erstellen des Objekts ein Fehler auftritt, wird eine Debugmeldung geschrieben.


    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");
    }
    

Sobald Sie über ein Geräteobjekt verfügen, können Sie dann auf die Methoden, Eigenschaften und Ereignisse des Geräts zugreifen.

Geräteobjektlebenszyklus

Vor Windows 8 hatten Apps einen einfachen Lebenszyklus. Win32- und .NET-Apps werden entweder ausgeführt oder nicht ausgeführt, und PointOfService-Peripheriegeräte wurden normalerweise für den gesamten App-Lebenszyklus beansprucht. Wenn ein Benutzer sie minimiert oder davon abweicht, wird er weiterhin ausgeführt. Dies war gut, bis tragbare Geräte und Energieverwaltung immer wichtiger wurden.

Windows 8 hat ein neues Anwendungsmodell mit UWP-Apps eingeführt. Auf hoher Ebene wurde ein neuer angehaltener Zustand hinzugefügt. Eine UWP-App wird kurz nach dem Minimieren oder Wechseln zu einer anderen App angehalten. Dies bedeutet, dass die Threads der App beendet werden, die App im Arbeitsspeicher verbleibt, es sei denn, das Betriebssystem muss Ressourcen freigeben, und alle Geräteobjekte, die PointOfService-Peripheriegeräte darstellen, werden automatisch geschlossen, um anderen Anwendungen den Zugriff auf die Peripheriegeräte zu ermöglichen. Wenn der Benutzer wieder zur App wechselt, kann er schnell in einen ausgeführten Zustand wiederhergestellt und PointOfService-Peripherieverbindungen wiederhergestellt werden, sofern sie weiterhin beim Fortsetzen verfügbar sind.

Sie können erkennen, wann ein Objekt aus irgendeinem Grund mit einem <DeviceObject> geschlossen wird. Der geschlossene Ereignishandler notiert sich dann die Geräte-ID, um die Verbindung in Zukunft erneut herzustellen. Alternativ können Sie dies in einer App-Anhaltebenachrichtigung behandeln, um die Geräte-ID für die erneute Einrichtung der Geräteverbindungen in der App-Fortsetzungsbenachrichtigung zu speichern. Stellen Sie sicher, dass Sie die Ereignishandler und doppelten Aktionen für das Geräteobjekt nicht auf beiden <DeviceObject-Objekten> verdoppelt haben. Geschlossen und App anhalten.

Tipp

Weitere Informationen zum Lebenszyklus von Windows 10-Universelle Windows-Plattform (UWP)-Anwendungen finden Sie in den folgenden Themen: