Objetos de dispositivo PointOfService

Obtenga información sobre cómo crear un objeto de dispositivo PointOfService que le proporcionará acceso a propiedades de solo lectura del periférico y reclamar el periférico para su uso exclusivo en una aplicación de Plataforma universal de Windows (UWP).

Creación de un objeto de dispositivo

Una vez que haya identificado el dispositivo PointOfService que desea usar, ya sea desde una enumeración nueva o un DeviceID almacenado, solo tiene que llamar a FromIdAsync con elDeviceID que ha elegido mediante programación o que el usuario ha seleccionado para crear un nuevo objeto de dispositivo punto de servicio.

En este ejemplo se intenta crear un nuevo objeto BarcodeScanner con FromIdAsync mediante un DeviceID. Si se produce un error al crear el objeto, se escribe un mensaje de depuración.


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

Una vez que tenga un objeto de dispositivo, puede acceder a los métodos, propiedades y eventos del dispositivo.

Ciclo de vida del objeto de dispositivo

Las aplicaciones WinUI, Win32 y .NET tienen un ciclo de vida sencillo. Están en ejecución o no, y los periféricos PointOfService normalmente se reservan durante todo el ciclo de vida de la aplicación. Cuando un usuario los minimiza o se aleja de ellos, continúa ejecutándose.

El modelo de aplicación para UWP tiene un ciclo de vida de aplicación más complejo. A grandes rasgos, se añadió un nuevo estado suspendido. Una aplicación para UWP se suspende poco después de que el usuario la minimice o cambie a otra aplicación. Esto significa que los subprocesos de la aplicación se detienen, la aplicación se deja en memoria a menos que el sistema operativo necesite reclamar recursos y los objetos de dispositivo que representen periféricos PointOfService se cierran automáticamente para permitir que otras aplicaciones accedan a los periféricos. Cuando el usuario vuelve a la aplicación, se puede restaurar rápidamente a un estado en ejecución y restaurar conexiones de periféricos PointOfService siempre que estén disponibles en la reanudación.

Puede detectar cuándo se cierra un objeto por cualquier motivo con un controlador del evento Closed de <DeviceObject> y, a continuación, tomar nota del identificador del dispositivo para restablecer la conexión en el futuro. Como alternativa, es posible que desee controlar esto en una notificación de suspensión de la aplicación para guardar el identificador del dispositivo para volver a establecer las conexiones de dispositivo en la notificación de reanudación de la aplicación. Asegúrese de no duplicar los controladores de eventos ni las acciones del objeto DeviceObject tanto en <DeviceObject>.Closed como en la suspensión de la aplicación.

Tip

Consulte los temas siguientes para obtener más información sobre el ciclo de vida de la aplicación de Plataforma universal de Windows (UWP):