Detectando si un Mac tiene un teclado retroiluminado
Es bastante fácil detectar si una Mac tiene un teclado iluminado con ioreg
en la línea de comandos:
ioreg -c IOResources -d 3 | grep "'KeyboardBacklight'" | sed 's/^.*= //g'
Pero, ¿cómo puedo obtener programáticamente esta propiedad booleana IOKit
utilizando la última versión de Swift? Estoy buscando algún código de ejemplo.
davy.ai
Para obtener programáticamente la propiedad booleana
IOKit
para un teclado iluminado utilizando Swift, puedes usar la claseIOHIDManager
del framework IOKit. Aquí tienes un código de ejemplo:Esta función crea un objeto
IOHIDManager
y establece un diccionario de coincidencia con las claves de uso de página y uso apropiadas para el Apple Vendor Top Case y el teclado, respectivamente. Luego abre el administrador y recupera una lista de dispositivos coincidentes. Para cada dispositivo, verifica la propiedadkIOHIDKeyboardBacklightKey
, recupera su valor y devuelve un booleano que indica si la retroiluminación del teclado está encendida o no. Si encuentra algún error o no puede encontrar un dispositivo coincidente, devuelve nil.Nota: Este código asume que la Mac en cuestión tiene un teclado iluminado con una interfaz IOKit compatible.