Novedades para desarrolladores en Windows 10, compilación 16299
La compilación 16299 de Windows 10 (también conocida como Fall Creators Update o versión 1709), en combinación con Visual Studio 2019 y el SDK actualizado, proporciona las herramientas, características y experiencias para crear aplicaciones extraordinarias para la Plataforma universal de Windows. Instale las herramientas y el SDK en Windows 10 y estará listo para crear una nueva aplicación universal de Windows o para explorar cómo puede usar el código de aplicación existente en Windows.
A continuación, te ofrecemos una colección de características e instrucciones nuevas y mejoradas de interés para los desarrolladores de Windows en esta versión. Para obtener una lista completa de los nuevos espacios de nombres agregados a Windows SDK, consulta Nuevas API en la compilación 16299 de Windows 10. Para obtener más información sobre las características más destacadas de Windows 10, consulte Lo más destacado de Windows 10. También puedes consultar Windows Developer Platform features (Características de la plataforma para desarrolladores de Windows) si quieres tener una introducción de alto nivel de las funcionalidades pasadas y futuras que se han agregado en la plataforma de Windows.
Diseño e interfaz de usuario
Característica | Descripción |
---|---|
XAML condicional | Ya puedes usar XAML condicional para crear aplicaciones adaptables para versiones. El XAML condicional te permite usar el método ApiInformation.IsApiContractPresent en la revisión XAML para establecer propiedades y crear una instancia de los objetos en la revisión en función de la presencia de una API, sin necesidad de usar código subyacente. |
Kits de herramientas de diseño | Los kits de herramientas de diseño y los recursos para aplicaciones para UWP se han ampliado con la incorporación de los kits de herramientas de Sketch y Adobe XD. Los kits de herramientas ya existentes también se han actualizado y renovado, proporcionando controles más sólidos y plantillas de diseño para las aplicaciones para UWP. Además, se han agregado nuevas herramientas y muestras para proporcionar ejemplos e inspiración. |
Efectos de Fluent Design | Estos nuevos efectos forman parte de Fluent Design System y usan la profundidad, la perspectiva y el movimiento para que los usuarios puedan centrarse en los elementos de interfaz de usuario más importantes. * Material acrílico es un tipo de pincel que crea texturas transparentes. * El efecto de paralaje agrega profundidad tridimensional y perspectiva a la aplicación. * Revelar resalta los elementos importantes de la aplicación. Para obtener más información, consulte la Introducción a Fluent Design. |
Aceleradores de teclado | Aumenta la accesibilidad y la facilidad de uso de la aplicación con aceleradores de teclado o accesos directos. Proporcionan una forma intuitiva para que los usuarios puedan invocar comandos o acciones comunes sin navegar por la interfaz de usuario de la aplicación y puede configurarse para ajustar el ámbito necesario para su función. |
Entrada manuscrita | Las API CoreIncrementalInkStroke permiten crear trazos de lápiz individuales que pueden representarse de forma incremental, con objetos InkPoint individuales. Las API CoreInkPresenterHost le permiten alojar un objeto InkPresenter sin un control InkCanvas asociado. |
Controlador radial | Las API RadialControllerConfiguration se han actualizado con la capacidad de distribuir el menú RadialController a la vista o proceso de una aplicación. |
Iconos dinámicos | Ancla iconos secundarios desde las aplicaciones Win32 del Puente de dispositivo de escritorio. |
Notificaciones del sistema | Usa actualización pendiente en los botones para crear interactividad de varios pasos en tus notificaciones del sistema. |
Controles de la interfaz de usuario | Gracias a estos nuevos controles te será más fácil compilar una interfaz de usuario inigualable. * El control del selector de colores permite a los usuarios examinar y seleccionar colores. * El control de la vista de navegación facilita el proceso para agregar navegación de nivel superior a la aplicación. * El control de imagen del usuario muestra la imagen de avatar de una persona. * El control de clasificación permite a los usuarios ver y establecer fácilmente clasificaciones que reflejan el grado de satisfacción con el contenido y los servicios. |
Voz y tono | Hemos agregado nuevas instrucciones sobre la voz y el tono de las aplicaciones para UWP para ofrecerle asesoramiento para escribir un texto en la aplicación. Independientemente de lo que crees, es importante que el lenguaje que uses sea cercano, sencillo e informativo. |
Juegos
Característica | Descripción |
---|---|
Difusión de juegos | Las nuevas API del espacio de nombres Windows.Media.AppBroadcasting permiten a tu aplicación iniciar la interfaz de usuario de difusión de juegos proporcionada por el sistema. También puedes registrar eventos que notifiquen a la aplicación cuando la difusión comience o se detenga. Las nuevas API del espacio de nombres Windows.Media.AppRecording te permiten grabar audio y vídeo y realizar capturas de pantalla del juego. También puedes proporcionar metadatos que el sistema insertará en secuencias de captura y difusión, lo que permite a las aplicaciones proporcionar experiencias de visualización que se sincronizan con eventos de juego. Para obtener más información sobre estas características, consulta Difusión y captura de juegos. |
Superposición del chat del juego | La clase GameChatOverlay proporciona métodos para obtener la instancia de superposición de chat de juego de forma predeterminada, establecer la posición deseada de la superposición y agregarle mensajes. |
Información del dispositivo de juegos | Debido a diversas funcionalidades de la consola, los desarrolladores de juegos de la Plataforma universal de Windows (UWP) necesitan una forma de determinar el tipo de consola en la que se ejecuta el juego, para tomar decisiones de tiempo de ejecución sobre cómo usar mejor el hardware. Las API Información del dispositivo de juegos de <gamingdeviceinformation.h> ofrecen esta funcionalidad. |
Modo Juego | Las API Modo Juego para la Plataforma universal de Windows (UWP) te permiten crear la experiencia de juego más optimizada al aprovechar Modo Juego en Windows 10. Estas API se encuentran en el encabezado <expandedresources.h> . |
Monitor de juegos | La clase GameMonitor permite que una aplicación obtenga el estado de permiso de supervisión de juego del dispositivo y, potencialmente, avise al usuario que habilite la supervisión de juego. |
TruePlay | TruePlay proporciona a los desarrolladores un nuevo conjunto de herramientas para combatir trampas en sus juegos de PC. Un juego inscrito en TruePlay se ejecutará en un proceso protegido, que mitiga una clase de ataques comunes. Las de API TruePlay para la Plataforma universal de Windows (UWP) permiten la interacción limitada entre juegos y el sistema de supervisión de juegos en equipos Windows 10. Estas API se encuentran en el encabezado <gamemonitor.h> . A partir de Windows 10, versión 1809 (10.0, compilación 17763), TruePlay se quitó de Windows. La documentación de TruePlay no está publicada. |
Xbox Live | Hemos agregado documentos para los desarrolladores de Xbox Live, para juegos de UWP y de Kit de desarrollo de Xbox (XDK). * Consulte la Guía para desarrolladores de Xbox Live para obtener información sobre cómo usar las API de Xbox Live para conectar el juego a la red social de juegos de Xbox Live. * Con el Programa de creadores de Xbox Live, cualquier desarrollador de juegos de UWP puede desarrollar y publicar un juego habilitado para Xbox Live en PC y Xbox One. * Consulte la introducción del programa de desarrollador de Xbox Live para obtener información sobre los programas y características disponibles para los desarrolladores de Xbox Live. |
Desarrollar aplicaciones de Windows
Característica | Descripción |
---|---|
Activación de aplicaciones para UWP | Las siguientes características nuevas ya están disponibles: * Use la clase StartupTask para especificar que una aplicación para UWP se inicie cuando el usuario se registre o durante el inicio del sistema. * Identifica si una aplicación para UWP se inició desde la línea de comandos. * Solicita mediante programación que la aplicación para UWP se reinicie con las API RequestRestartAsync() y RequestRestartForUserAsync(). * la aplicación para iniciar la configuración de Windows se ha actualizado para reflejar los nuevos esquemas de URI como ms-settings:storagesense o ms-settings:cortana-notifications entre otros. |
Empaquetado de la aplicación | El Instalador de aplicación se ha ampliado para permitir la descarga de paquetes de la aplicación para UWP desde una página web . Asimismo, los conjuntos relacionados de un paquete de la aplicación pueden descargarse con el Instalador de aplicación. Consulta la nueva sección Instalar aplicaciones para UWP con el Instalador de aplicación para obtener más información. |
Extensiones y servicios de aplicaciones | Hemos agregado una nueva guía, Crear y usar una extensión de aplicación, para ayudarte a escribir y alojar extensiones de aplicaciones de la Plataforma universal de Windows (UWP) para ampliar tu aplicación mediante paquetes que los usuarios pueden instalar desde Microsoft Store. Hemos agregado una nueva guía, Ampliar la aplicación con servicios, extensiones y paquetes, que clasifica las distingas tecnologías de Windows 10 que puede usar para ampliar y separar por componentes la aplicación. |
Tareas en segundo plano | Hemos agregado tres guías que le ayudarán a aprovechar las tareas en segundo plano: * Ejecución indefinida en segundo plano para usar todos los recursos disponibles en un dispositivo sin ninguna limitación de ejecución extendida o en segundo plano. Esto se aplica a la aplicaciones para UWP empresariales y a las aplicaciones para UWP que no se enviarán a Microsoft Store. * Desencadenar una tarea en segundo plano desde la aplicación para activar tareas en segundo plano desde esta. * Ejecutar una tarea en segundo plano cuando se actualice la aplicación para UWP para crear una tarea en segundo plano que se ejecuta cuando se actualiza la aplicación para UWP. |
Puente de dispositivo de escritorio | Hemos agregado tres guías que le ayudarán a agregar experiencias modernas a las aplicaciones de escritorio en Windows 10: la guía * Mejora de la aplicación de escritorio para Windows 10 y que así pueda para buscar y hacer referencia a los archivos correctos y, a continuación, escribir código para mejorar las experiencias de UWP para los usuarios de Windows 10. * Ampliación de la aplicación de escritorio con componentes de UWP modernos para incorporar modernas interfaces de usuario basadas en XAML y otras experiencias de UWP que deben ejecutarse en un contenedor de aplicación para UWP. * Migración de la aplicación a la Plataforma universal de Windows para compartir código entre aplicaciones WPF, Windows Forms, UWP; Android e iOS. |
Empaquetado del Puente de dispositivo de escritorio | Visual Studio presenta un nuevo proyecto de empaquetado que elimina todos los pasos manuales que solían ser necesarios para empaquetar una aplicación de escritorio de plena confianza. Tan solo tiene que agregar un proyecto de empaquetado, hacer referencia al proyecto de escritorio y luego presionar F5 para depurar la aplicación. No es necesario realizar ajustes manuales. Esta nueva experiencia optimizada es una gran mejora de la experiencia que estaba disponible en la versión anterior de Visual Studio. |
Diagnósticos y subprocesos | Las nuevas API de diagnóstico proporcionan información sobre la ejecución de aplicaciones: * La clase AppMemoryReport proporciona información sobre el límite total de confirmación esperado de una aplicación, el uso privado de confirmación, etc. * La clase AppDiagnosticInfo ahora puede supervisar el estado de ejecución de una aplicación o tarea y proporciona notificaciones cuando cambia el estado de ejecución. * La clase MemoryManager tiene nuevos métodos para establecer el límite de uso de memoria de la aplicación e informar del límite de uso de memoria esperado de la aplicación. Puede poner en cola tareas en orden de prioridad y ejecutarlas en otro subproceso con la clase DispatcherQueue. Esta funcionalidad también está disponible en Win32 a través de la función CreateDispatcherQueueController. |
EdgeHTML 16 | Se ha actualizado a EdgeHTML 16 la plataforma web que alimenta a Microsoft Edge y a las aplicaciones de la Plataforma universal de Windows basadas en JS y ahora incluye importantes mejoras para herramientas de desarrollo F12, compatibilidad con el diseño de cuadrícula CSS y otras importantes funciones. * El diseño de cuadrícula CSS se admite ahora en Microsoft Edge. El diseño de cuadrícula define un sistema de diseño basado en cuadrícula bidimensional que permite lograr una mayor fluidez de diseño de lo que es posible con el posicionamiento mediante flotantes o scripts. * Los documentos DevTools F12 de Microsoft Edge se han actualizado para proporcionar una mayor solidez y rendimiento. También se han agregado nuevas características para optimizar la experiencia de desarrollo. * Solo en Microsoft Edge, WebVR ha agregado soporte para controladores de movimiento y una variedad de cascos de Windows Mixed Reality. WebVR también se ha optimizado para admitir hasta 90 fotogramas por segundo. Consulte la Guía para desarrolladores de Microsoft Edge para obtener una lista completa de los cambios y las nuevas API compatibles. |
Elementos de mapa en 3D | Puedes agregar objetos tridimensionales a un mapa. Puedes usar la nueva clase MapModel3D para importar un objeto 3D desde un archivo con formato de fabricación 3D (3MF). |
Estilo de elementos de mapa | Puedes personalizar la apariencia de los elementos de mapa con dos nuevas propiedades de MapElement: MapStyleSheetEntry y MapStyleSheetEntryState. * Puede usar la propiedad MapStyleSheetEntry para hacer que parezca que los elementos de mapa forman parte del mapa base (por ejemplo: configurar un estilo de elemento a una entrada existente de la hoja de estilo de mapa, como por ejemplo, agua). * Puede usar la propiedad MapStyleSheetEntryState para modificar el aspecto de los elementos de mapa sacando partido de los estados predeterminados de la hoja de estilos de mapa, tales como mantener el puntero y seleccionado, o anularlos para crear los suyos propios. |
Niveles de mapa | Puedes agregar elementos de puntos de interés a un nivel de mapay luego enlazar XAML directamente a dicho nivel. Agrupa los elementos en niveles. Luego puedes manipular cada nivel de forma independiente. Por ejemplo, cada capa tiene su propio conjunto de eventos para que puedas responder a un evento en un nivel específico y realizar una acción específica para dicho evento. |
Información de ubicación del mapa | Puedes mostrar a los usuarios un mapa en el interior de una ventana emergente ligera arriba, debajo o al lado de un elemento de interfaz de usuario o área de la aplicación donde el usuario puede tocar. Esta ventana se cierra cuando el usuario cambia el contexto. Esto evita que los usuarios tengan que cambiar a otra aplicación o ventana del explorador para obtener información sobre una ubicación. |
Servicios de mapa | ¿Vas a hacer turismo? Usa el nuevo valor MapRouteOptimization.Scenic para optimizar una ruta que incluya las carreteras más pintorescas y MapRoute.IsScenic para detectar si una ruta existente incluye carreteras pintorescas. |
Captura multimedia | El artículo Procesar fotogramas multimedia con MediaFrameReader se actualizó para mostrar el uso de la nueva clase MultiSourceMediaFrameReader, que le permite obtener fotogramas correlacionados en tiempo desde varios orígenes multimedia. Se ha actualizado Procesar fotogramas multimedia con MediaFrameReader para incluir una descripción del modo de adquisición de fotogramas almacenados en búfer que permite a las aplicaciones solicitar los fotogramas adquiridos que se proporcionan a la aplicación en secuencia, sin descartar fotogramas adquiridos mientras la aplicación estaba procesando un fotograma anterior. Además, si un objeto MediaCapture se ha inicializado con un grupo de origen de fotograma multimedia que incluye uno o más orígenes de fotogramas multimedia, puede crear un objeto MediaSource que le permita presentar los fotogramas multimedia en un control MediaPlayerElement de una página XAML. Para obtener más información, consulte Procesamiento de marcos de medios con MediaFrameReader. |
Reproducción de contenido multimedia | Se han agregado nuevas secciones al artículo de reproducción básica multimedia Reproducir audio y vídeo con MediaPlayer. * La sección Reproducción de un vídeo esférico con MediaPlayer muestra cómo reproducir un vídeo codificado de forma esférica, incluido el ajuste del campo de visión y la orientación de la vista en formatos compatibles. * La sección Usar MediaPlayer en modo de servidor de fotogramas muestra cómo copiar fotogramas desde contenido multimedia reproducido con MediaPlayer a una superficie de Direct3D. Esto permite escenarios como la aplicación de efectos en tiempo real con sombreadores de píxeles. El código de ejemplo muestra una implementación rápida de un efecto de desenfoque en una reproducción de vídeo con Win2D. |
Mis allegados | Mis allegados permite a los usuarios anclar contactos desde una aplicación directamente a la barra de tareas. Aprenda a agregar la asistencia de Mis allegados a su aplicación. * My People sharing (Compartir Mis allegados) permite a los usuarios compartir archivos a través de su aplicación, directamente desde la barra de tareas. * Las notificaciones de Mis allegados son un nuevo tipo de notificación del sistema que los usuarios pueden enviar a sus contactos anclados. |
.NET Standard 2.0 | La Plataforma universal de Windows ha implementado completamente .NET Standard 2.0. Esta nueva versión del estándar incluye un gran aumento en el número de las API de .NET junto con una corrección de compatibilidad para tus paquetes NuGet favoritos y las bibliotecas de terceros. Si tiene previsto usar otras plataformas tales como iOS y Android, o si tiene una aplicación de escritorio y quiere crear una aplicación para UWP, mueva el código a las bibliotecas de clase .NET Standard 2.0 y vuelva a usar dicho código en cada versión de la aplicación. |
Anclar a la barra de tareas | La nueva clase TaskbarManager te permite pedir al usuario que ancle tu aplicación a la barra de tareas. |
Punto de servicio | Hemos agregado una nueva guía para que te sirva de introducción con los dispositivos de punto de servicio. Trata de temas como la enumeración de dispositivo, la comprobación de funcionalidades de dispositivo, la reclamación de dispositivos y el uso compartido de dispositivos. |
Reconocimiento de voz | Ahora puedes usar SpeechRecognitionListConstraint de forma conjunta con un servicio web SpeechRecognitionTopicConstraint para aumentar la precisión del dictado ofreciendo un conjunto de palabras clave específicas de dominio que pienses que probablemente se usarán durante el dictado. |
Actividades del usuario | Una nueva API de Windows.ApplicationModel.UserActivities te permite encapsular una tarea de usuario que puede seguir realizándose más adelante y, potencialmente, en otro dispositivo. |
Publicar y monetizar aplicaciones de Windows
Las funciones de esta sección se han agregado desde el lanzamiento de la versión anterior de Windows, 1703. Están disponibles para todos los desarrolladores de Windows y no requieren el SDK actualizado.
Característica | Descripción |
---|---|
Administración de cuentas | Se proporciona más flexibilidad al asociar inquilinos de Azure AD con tu cuenta del Centro de partners para agregar varios usuarios de la cuenta. Puedes asociar varios inquilinos de Azure AD a tu cuenta del Centro de partners o asociar un único inquilino de Azure AD a más de una cuenta del Centro de partners. |
Publicidad | El SDK de Microsoft Advertising ahora te permite mostrar anuncios nativos en tus aplicaciones. Un anuncio nativo es un formato de anuncio basado en componentes, donde cada parte del anuncio creativo (por ejemplo, el título, la imagen, la descripción y el texto de llamada a la acción) se entrega a la aplicación como un elemento individual. Actualmente, los anuncios nativos están disponibles únicamente para los desarrolladores que se unan a un programa piloto, pero queremos que esta característica esté disponible para todos los desarrolladores pronto. |
Precios y disponibilidad | Las nuevas opciones de precios y disponibilidad te permiten programar cambios en los precios y establecer las fechas de lanzamiento exactas. |
API de análisis de Store | La API de análisis de Microsoft Store ahora proporciona un método que puedes usar para descargar el archivo CAB para un error de la aplicación. |
Descripciones de la Tienda | La descripción de Store se ha mejorado con nuevas capacidades para atraer a los usuarios potenciales: * La descripción de Store de la aplicación ahora puede incluir avances de vídeo. * Puede importar y exportar las descripciones de Store para realizar las actualizaciones más rápido, especialmente si tiene descripciones en varios lenguajes. |
API de envío | La API de envío de Microsoft Store ahora te permite incluir tráileres de vídeo y opciones de juego con los envíos de aplicaciones. |
Ofertas dirigidas | Las ofertas dirigidas te permiten centrarte en segmentos específicos de los clientes con contenido personalizado y atractivo para aumentar la interacción, retención y monetización. |
Ejemplos
Programador de comidas
La muestra Programador de comidas programa comidas con amigos y compañeros de trabajo. Crea una salida para comer, invita a amigos a un restaurante de interés y la aplicación se encarga de la administración de la comida para todas las partes implicadas. Esta aplicación resalta las siguientes acciones:
- Muestra la integración con servicios como Facebook, Microsoft Graph para autenticación, operaciones basadas en gráficos y detección de amigos.
- Funciona con Yelp y Mapas de Bing para obtener recomendaciones de restaurantes.
- Incorpora elementos de Fluent Design System en una aplicación para UWP, incluidas animaciones acrílicas, de revelación y conectadas.
Juego de preguntas
La muestra aplicación Juego de preguntas (API de sesiones de sistema remoto) muestra cómo usar la API de sesiones de sistema remoto en el contexto de un escenario de juego de preguntas. Un host envía las preguntas a los dispositivos que se encuentren en la proximidad y los participantes responden a las preguntas en sus propios dispositivos.
La API de sesiones de sistema remoto permite que un dispositivo aloje una sesión reconocible por otros dispositivos cercanos. Pueden participar entonces en esta sesión y enviar mensajes al host y otros participantes.