Ampliar la aplicación con servicios, extensiones y paquetes

Hay muchas tecnologías en Windows 10 para ampliar y componentes la aplicación. Esta tabla debe ayudarle a determinar qué tecnología debe usar en función de los requisitos. Va seguido de una breve descripción de los escenarios y tecnologías.

Escenario Paquete de recursos Paquete de recursos Paquete opcional Paquete plano Extensión de aplicación App Service Instalación de streaming
Complementos de código de terceros ✔️
Complementos de código en proceso ✔️
Recursos de experiencia del usuario (cadenas/imágenes) ✔️ ✔️ ✔️ ✔️ ✔️
Contenido a petición
(por ejemplo, niveles adicionales)
✔️ ✔️ ✔️
Licencias y adquisiciones independientes ✔️ ✔️ ✔️
Adquisición desde la aplicación ✔️ ✔️
Optimización del tiempo de instalación ✔️ ✔️ ✔️ ✔️
Reducir la superficie del disco ✔️ ✔️
Optimización del empaquetado ✔️ ✔️ ✔️
Reducción del tiempo de publicación ✔️ ✔️ ✔️ ✔️

Descripciones de escenarios (las filas de la tabla anterior)

Complementos de terceros

Código que puedes descargar desde la tienda y ejecutar desde la aplicación. Por ejemplo, extensiones para el explorador Microsoft Edge.

Complementos de código en proceso

Código que se ejecuta en proceso con la aplicación. También puede incluir contenido. Dado que el código se ejecuta en proceso, se supone un nivel de confianza superior. Puede optar por no exponer este tipo de extensibilidad a un tercero.

Recursos de experiencia de usuario (cadena/imágenes)

Recursos de la interfaz de usuario, como cadenas localizadas, imágenes y cualquier otro contenido de la interfaz de usuario que desee factorizar en función de la configuración regional o cualquier otro motivo.

Contenido a petición

Contenido que desea descargar más adelante. Por ejemplo, las compras desde la aplicación que permiten descargar nuevos niveles, máscaras o funcionalidades.

Licencias y adquisiciones independientes

La capacidad de licenciar y adquirir el contenido independientemente de la aplicación.

Adquisición desde la aplicación

Indica si hay compatibilidad mediante programación para adquirir el contenido desde dentro de la aplicación.

Optimización del tiempo de instalación

Proporciona funcionalidad para reducir el tiempo necesario para adquirir la aplicación desde la tienda y empezar a ejecutarse.

Reducir la superficie del disco Reduce el tamaño de una aplicación solo mediante la inclusión de aplicaciones o recursos necesarios.

Optimización del empaquetado Optimiza el proceso de empaquetado de aplicaciones para aplicaciones a gran escala o complejas.

Reducción del tiempo de publicación Minimice la cantidad de tiempo que se tarda en publicar la aplicación en la Tienda, el recurso compartido local o el servidor web.

Descripciones de la tecnología (las columnas de la tabla anterior)

Paquete de recursos

Los paquetes de recursos son paquetes de solo recursos que permiten a la aplicación adaptarse a varios tamaños de presentación e idiomas del sistema. El paquete de recursos tiene como destino el lenguaje de usuario, la escala del sistema y las características de DirectX, lo que permite que la aplicación se adapte a una variedad de escenarios de usuario. Aunque un paquete de aplicación puede contener varios recursos, el sistema operativo solo descargará los recursos pertinentes por dispositivo de usuario, lo que ahorra ancho de banda y espacio en disco.

Paquete de recursos Los paquetes de recursos son un origen común, centralizado de archivos ejecutables o no ejecutables para su uso por parte de la aplicación. Normalmente, son archivos no específicos del procesador o del idioma. Por ejemplo, esto podría incluir una colección de imágenes en un paquete de recursos y vídeos de otro paquete de recursos, ambos usados por la aplicación. Si la aplicación admite varias arquitecturas y varios lenguajes, estos recursos podrían incluirse en el paquete de arquitectura o en el paquete de recursos, pero también significa que los recursos se duplicarían varias veces en los distintos paquetes de arquitectura, ocupando espacio en disco. Si se usan paquetes de activos, solo deben incluirse en el paquete de aplicación general una vez. Consulte Introducción a los paquetes de recursos para obtener más información.

Paquete opcional

Los paquetes opcionales se usan para complementar o ampliar la funcionalidad original de un paquete de aplicación. Es posible publicar una aplicación, seguida de publicar paquetes opcionales en un momento posterior, o publicar la aplicación y los paquetes opcionales simultáneamente. Al extender la aplicación a través de un paquete opcional, tienes las ventajas de distribuir y monetizar contenido como un paquete de aplicación independiente. Normalmente, los paquetes opcionales están diseñados para ser desarrollados por el desarrollador de aplicaciones original, ya que se ejecutan con la identidad de la aplicación principal (a diferencia de las extensiones de la aplicación). Dependiendo de cómo defina el paquete opcional, puede cargar código, recursos o código y recursos desde el paquete opcional a la aplicación principal. Si necesitas mejorar tu aplicación con contenido que se puede monetizar, conceder licencia y distribuir por separado, es posible que los paquetes opcionales sean la opción adecuada para ti. Para más información sobre la implementación, consulte Paquetes opcionales y creación de conjuntos relacionados.

Los paquetes de aplicaciones de agrupación plana son similares a los paquetes de aplicaciones normales, excepto que, en lugar de incluir todos los paquetes de aplicaciones dentro de la carpeta, el paquete plano solo contiene referencias a esos paquetes de aplicaciones. Al contener referencias a paquetes de aplicaciones en lugar de los propios archivos, una agrupación plana reducirá la cantidad de tiempo que se tarda en empaquetar y descargar una aplicación.

Extensión de aplicación

Las extensiones de aplicación permiten que la aplicación para UWP hospede el contenido proporcionado por otras aplicaciones para UWP. Descubre, enumera y accede a contenido de solo lectura desde dichas aplicaciones.

Si una aplicación admite extensiones, cualquier desarrollador puede enviar una extensión para la aplicación. Por lo tanto, la aplicación host debe ser sólida cuando carga una extensión con la que no se ha probado previamente. Las extensiones deben considerarse que no son de confianza.

Las aplicaciones no pueden cargar código de extensiones. Si necesita ejecución de código, considere App Services.

App Service

Los servicios de aplicaciones de Windows permiten la comunicación entre aplicaciones al permitir que la aplicación para UWP proporcione servicios a otra aplicación universal de Windows. Los servicios de aplicaciones permiten crear servicios sin interfaz de usuario a los que las aplicaciones pueden llamar en el mismo dispositivo y a partir de Windows 10, versión 1607, en dispositivos remotos. Consulte Creación y consumo de un servicio de aplicaciones para obtener más información.

Los servicios de aplicaciones son aplicaciones para UWP que proporcionan servicios a otras aplicaciones para UWP. Son análogos a los servicios web en un dispositivo. Un servicio de aplicaciones se ejecuta como tarea en segundo plano en la aplicación host y puede proporcionar su servicio a otras aplicaciones. Por ejemplo, un servicio de aplicaciones podría proporcionar un servicio de escáner de códigos de barras que podrían usar otras aplicaciones. O quizás un conjunto de aplicaciones Enterprise tiene un servicio de aplicaciones de revisión ortográfica común que está disponible para las otras aplicaciones del conjunto.

Instalación de streaming de aplicaciones para UWP

La instalación de streaming es una manera de optimizar cómo se entrega la aplicación a los usuarios. En lugar de esperar a que toda la aplicación se descargue antes de poder usarla, los usuarios pueden interactuar con la aplicación tan pronto como se haya descargado una parte necesaria. Es necesario, como desarrollador, segmentar la aplicación en una sección necesaria para la activación básica y el inicio y el contenido adicional para el resto de la aplicación. Consulta Instalación de streaming de aplicaciones para UWP para obtener más información y detalles de implementación.

Consulte también

Crear y usar un servicio de aplicación
Introducción a los paquetes de activos
Creación de paquetes con el diseño del empaquetado
Creación de paquetes opcionales y conjuntos relacionados
Desarrollar con paquetes de activos y plegado de paquetes
Instalación en streaming de aplicaciones para UWP
Paquetes de aplicaciones de conjuntos planos
Espacio de nombres Windows.ApplicationModel.AppService
Espacio de nombres Windows.ApplicationModel.Extensions