Para los desarrolladores que construyen aplicaciones para computadoras móviles, Microsoft Windows Vista es un avance sumamente importante. Conozca la nueva pantalla auxiliar, los avances en la administración de energía y en el conocimiento de la red, y las nuevas capacidades ubicuas de Tablet PC en todas las versiones.
Las computadoras móviles son un segmento grande y creciente de todo el mercado de computadoras personales. En la actualidad, constituyen alrededor del 40% del mercado mundial de computadoras personales y su ascenso es cada vez más rápido. En algunos países, como Japón, las ventas de laptops están superando las de las computadoras de escritorio. Sin embargo, las laptops, notebooks y Tablet PC presentan dificultades especiales para los desarrolladores de aplicaciones. Algunas de las dificultades son la administración de energía, el conocimiento de la red, proporcionar acceso a datos importantes sin conexión, aprovechar múltiples pantallas, la funcionalidad de acoplamiento grab-and-go y la legibilidad. Al mismo tiempo, el factor de la movilidad da lugar a escenarios clave, no disponibles en una computadora de escritorio. Microsoft Windows Vista, cuyo anterior nombre en código era "Longhorn", logra avanzar contra todas estas dificultades y es bastante simple para los desarrolladores de aplicaciones.
Los usuarios de computadoras móviles no siempre desean acceder a la pantalla principal de su PC, no obstante, la computadora contiene mucha información importante que los usuarios desean obtener de manera rápida. Para resolver esta cuestión, Windows Vista incorpora la pantalla auxiliar. Las pantallas auxiliares le brindan al usuario acceso rápido a información de gran utilidad, como compromisos del calendario y el último e-mail aun cuando la PC está en standby o hibernando, control multimedia cuando la computadora está apagada y otras notificaciones de aplicaciones.
Crear nuevas aplicaciones o extender aplicaciones existentes a pantallas auxiliares es sencillo; las aplicaciones simplemente se registran ellas mismas con el subsistema de pantalla auxiliar durante la instalación. El subsistema de pantalla auxiliar se ocupa de la administración del dispositivo. Una aplicación podría, incluso, almacenar datos en caché en dispositivos que lo soporten para poder acceder sin conexión o podría proporcionar este contenido cuando el usuario lo solicite.
Aquí tiene algunos puntos clave para comprender el subsistema de pantalla auxiliar:
Las aplicaciones en Windows Vista se comunican con las APIs de pantalla auxiliar y no necesitan preocuparse por las capas de abajo. Esto evita que las aplicaciones tengan que entender las propiedades específicas de cada dispositivo de pantalla auxiliar. Las capacidades del dispositivo se exponen sólo si se lo solicita.
El subsistema de pantalla auxiliar no posee interés en la conexión. No interesa si una pantalla auxiliar está conectada a través de Universal Serial Bus (USB), Bluetooth, Transmission Control Protocol/Internet Protocol (TCP/IP) u otros futuros protocolos, siempre y cuando esté presente el apropiado controlador de transporte de la pantalla auxiliar en modo de usuario.
Los controladores de filtro adicionales convierten el formato de contenido de la pantalla auxiliar en algo que puede comprender el dispositivo específico. Por ejemplo, se puede escribir un controlador para soportar comandos AT GSM (Global System for Mobile Communications) en teléfonos celulares o crear mapas de bits que pueden ser leídos por una unidad de exhibición de imagen.
A medida que más y más computadoras se vuelven móviles, los usuarios esperan tratar a sus PC como lo hacen con PDA (agendas electrónicas) y teléfonos celulares hoy en día, con una mayor duración de la batería y sin tener que experimentar largos procesos de encendido y apagado entre cada sesión. Con el fin de cumplir con estas expectativas, el hardware, el sistema operativo y las aplicaciones deben hacer su parte para lograr una mayor duración de la batería y transiciones de reanudación y standby del sistema rápidas y confiables.
Windows Vista incorpora varias características nuevas para una mejor administración de la energía, incluyendo un kernel power policy manager rediseñado y mejorado. El power policy manager mejorado proporciona una estructura común para que las aplicaciones y los dispositivos reciban notificaciones de los eventos de energía importantes del sistema. Por ejemplo, uno de estos eventos sería incluir las preferencias de energía actual del usuario y las notificaciones de cuando la capacidad de energía restante cruza niveles específicos. La aplicación también puede utilizar el power policy manager para manejar el almacenamiento y la recuperación de sus configuraciones de energía específicas de la aplicación con la actual política de energía del sistema del usuario. Cuando ocurre una transición de energía que afecta una configuración de energía para la que se registró la aplicación, el power manager le notificará a la aplicación con un valor actualizado para la configuración de energía. El power manager puede manejar todo el overhead de almacenar, administrar y recuperar configuraciones de energía para una aplicación. Esto puede reducir en forma significativa el trabajo que requieren los desarrolladores para soportar un comportamiento consciente de la energía en forma inteligente y eficiente.
Lo que es aun más importante, los desarrolladores deberían enfocarse en el uso apropiado de los mensajes system power broadcast (WM_POWERBROADCAST) de sus aplicaciones. Cuando el sistema está por ir a descansar, Windows emite un mensaje de consulta de descanso junto con un indicador que señala si las aplicaciones tienen permitido exhibir UI (Interfaz de Usuario). Indistintamente del estado de este indicador, las aplicaciones deberían hacer todo lo posible para preparase para descansar sin consultarle ni notificarle al usuario.
En el mundo de hoy, donde existen dispositivos móviles y acceso inalámbrico, los desarrolladores de aplicaciones ya no pueden asumir que la red está siempre presente ni que hay un sólo camino hacia un recurso. Aun cuando el TCP (Protocolo de Control de Transmisión) posee algoritmos complejos para asegurar un envío, no puede superar la naturaleza transitoria del entorno de red del usuario móvil. Tanto el funcionamiento de redes inalámbricas como la funcionalidad de acoplamiento grab-and-go significan que los discos rígidos externos y las conexiones de red pueden desconectarse sin aviso.
En Windows Vista, las aplicaciones ahora pueden hacer un mejor trabajo adecuando la experiencia del usuario al estado conectado del sistema. Se logra comprender mejor el estado conectado que se efectuó consultando la nueva Network Location API 2 (NLA2). NLA2 proporciona un sólo lugar donde una aplicación puede obtener todos los parámetros de red para una computadora y puede informar a la aplicación sobre cambios en los parámetros e información de contexto de la red.
El Administrador de Sincronización proporciona una tecnología estándar centralizada para sincronizar archivos para utilizar fuera de línea en una computadora móvil o una PC conectada a una red de área local (LAN). Junto con las funciones de conectividad, notificaciones (System Event Notification Service) y caché del lado del cliente, el Administrador de Sincronización brinda una infraestructura para soportar la informática móvil. En lugar de que cada aplicación implemente su propia tecnología para almacenar en caché y sincronizar recursos de red para utilizar en forma local, el sistema operativo provee un modelo integrado que pueden utilizar todas las aplicaciones. Los archivos se sincronizan independientemente del protocolo. Por ejemplo, un programa de correo electrónico puede transferir sus mensajes empleando Simple Mail Transfer Protocol (SMTP), Network News Transfer Protocol (NNTP) o Post Office Protocol 3 (POP3), mientras que un navegador puede utilizar HTTP y una base de datos puede emplear Remote Procedure Call (RPC). Los desarrolladores pueden utilizar la interfaz común para el Administrador de Sincronización en sus aplicaciones para sincronizar archivos entre el almacenamiento de red y la computadora local del usuario.
El Administrador de Sincronización también incluye una interfaz de programación, de modo que las aplicaciones pueden registrarse para utilizar características de sincronización, pueden procesar errores y pueden recibir notificaciones e información de progreso durante el proceso de sincronización.
En Windows Vista, una nueva interfaz de usuario (UI) común y consistente administra la sincronización con otros dispositivos y fuentes de datos. Los desarrolladores pueden conectarse a esta UI (en lugar de crear soluciones personalizadas y exclusivas) y así proporcionar una experiencia de usuario consistente para sincronizar con sus dispositivos. Hay APIs adicionales que extienden los menús de contexto en el Administrador de Sincronización.
Windows Vista incluye muchos avances para desarrolladores de Tablet PC. Entre los principales están Ink Analysis y la integración con Windows Presentation Foundation, cuyo anterior nombre en código era "Avalon". Sin embargo, es probable que el mayor avance sea la ubicuidad de las características de Tablet PC. Hasta la fecha, los desarrolladores no la han pasado muy bien con el problema de redistribución de tecnología de Tablet PC. No obstante, las tecnologías de Tablet PC son ubicuas en todas las ediciones de Windows Vista.
Ink Analysis: La API de Reconocimiento Unificado
Hasta hoy en día, la interpretación programática de tinta utilizando el Tablet Platform Software Development Kit (SDK) se llevaba a cabo empleando dos APIs distintas:
Ink Divider. Le permitía al desarrollador diferenciar los trazos de escritura y los trazos de ilustraciones, e identificar la agrupación gramatical básica de los trazos (gráficos, renglones y palabras).
RecognizerContext. Le permitía al desarrollador convertir los trazos de tinta en texto.
Con el propósito de simplificar la experiencia del desarrollador, Windows Vista fusiona las APIs en una sola llamada Ink Analysis.
El verdadero poder de Ink Analysis se hace evidente cuando se utilizan sus capacidades en forma conjunta. Por ejemplo, combinando el reconocimiento de formas, la interpretación de diseños y los indicios de análisis, es posible convertir diapositivas escritas a mano en presentaciones profesionales.
Integración de Windows Presentation Foundation
La colección y rendering de Digital ink, características tradicionalmente disponibles sólo en Tablet PC, han sido incorporados en Windows Presentation Foundation como miembros de primera clase de la estructura. No se requiere tiempo de ejecución por separado para soportar la funcionalidad de tinta básica en sus aplicaciones.
Hello, <InkCanvas>!
El componente central de soporte de Tablet PC en Windows Presentation Foundation es el elemento, definido en el namespace System.Windows.Controls. Los desarrolladores sólo necesitan crear una nueva aplicación de Windows Presentation Foundation en Microsoft Visual Studio 2005, luego, editar el esqueleto Extensible Application Markup Language (XAML) y reemplazar los tags <Grid> por un tag <InkCanvas />.
Gracias a la disposición, rendering y hit-testing flexibles inherentes en todos los elementos de la estructura de Windows Presentation Foundation, InkCanvas puede encapsular todos los modos de operación proporcionados por los controles InkCollector, InkPicture y InkOverlay de la clásica API de plataforma Tablet PC (basada en Windows Forms y Component Object Model (COM)).
Con su nueva pantalla auxiliar, los avances en la administración de energía y en el conocimiento de la red, y las nuevas capacidades ubicuas de Tablet PC en todas las versiones, Windows Vista es un avance sumamente importante para los desarrolladores que construyen aplicaciones para computadoras móviles. Puesto que las laptops representan una porción cada vez mayor de la población de computadoras personales, es muy aconsejable para los desarrolladores aprovechar estas capacidades nuevas.