Paquetes de aplicaciones de conjuntos planos
Importante
Si quieres enviar tu aplicación a la Tienda, debes ponerse en contacto con el soporte técnico para desarrolladores de Windows para obtener aprobación para usar agrupaciones planas.
Las agrupaciones planas son una manera mejorada de agrupar los archivos de paquete de la aplicación. Un archivo típico de agrupación de aplicaciones de Windows usa una estructura de empaquetado de varios niveles en la que los archivos de paquete de la aplicación deben estar contenidos dentro de la agrupación, las agrupaciones planas quitan esta necesidad haciendo referencia solo a los archivos del paquete de la aplicación, lo que les permite estar fuera del lote de aplicaciones. Dado que los archivos del paquete de la aplicación ya no están incluidos en el lote, se pueden procesar en paralelo, lo que reduce el tiempo de carga, una publicación más rápida (ya que cada archivo de paquete de aplicación se puede procesar al mismo tiempo) y, en última instancia, iteraciones de desarrollo más rápidas.
Otra ventaja de los paquetes planos es la necesidad de crear menos paquetes. Dado que solo se hace referencia a los archivos de paquete de la aplicación, dos versiones de la aplicación pueden hacer referencia al mismo archivo de paquete si el paquete no cambió entre las dos versiones. Esto permite crear solo los paquetes de aplicación que han cambiado al compilar los paquetes para la siguiente versión de la aplicación. De forma predeterminada, los paquetes planos harán referencia a los archivos de paquete de la aplicación dentro de la misma carpeta que en sí. Sin embargo, esta referencia se puede cambiar a otras rutas de acceso (rutas de acceso relativas, recursos compartidos de red y ubicaciones http). Para ello, debes proporcionar directamente un BundleManifest durante la creación de la agrupación plana.
Creación de una agrupación plana
Se puede crear una agrupación plana mediante la herramienta MakeAppx.exe o mediante el diseño de empaquetado para definir la estructura de la agrupación.
Uso de MakeAppx.exe
Para crear un paquete plano mediante MakeAppx.exe, use el comando "MakeAppx.exe bundle" como de costumbre, pero con el modificador /fb para generar el archivo de agrupación de aplicaciones planas (que será extremadamente pequeño, ya que solo hace referencia a los archivos de paquete de la aplicación y no contiene ninguna carga real).
Este es un ejemplo de la sintaxis del comando:
MakeAppx bundle [options] /d <content directory> /fb /p <output flat bundle name>
Para obtener más información sobre el uso de MakeAppx.exe, consulte Creación de un paquete de aplicación con la herramienta MakeAppx.exe.
Uso del diseño de empaquetado
Como alternativa, puede crear una agrupación plana mediante el diseño de empaquetado. Para ello, establezca el atributo FlatBundle en true en el elemento PackageFamily del manifiesto del lote de la aplicación. Para obtener más información sobre el diseño de empaquetado, consulte Creación de paquetes con el diseño de empaquetado.
Implementación de un paquete plano
Para poder implementar una agrupación plana, cada uno de los paquetes de aplicación (además del lote de aplicaciones) debe estar firmado con el mismo certificado. Esto se debe a que todos los archivos de paquete de la aplicación (.appx/.msix) ahora son archivos independientes y ya no están incluidos en el archivo del paquete de aplicaciones (.appxbundle/.msixbundle).
Una vez firmados los paquetes, puede instalar la aplicación mediante una de estas opciones:
- Haga doble clic en el archivo de agrupación de aplicaciones para instalarlo con el instalador de la aplicación.
- Use el cmdlet Add-AppxPackage en PowerShell y apunte al archivo de agrupación de aplicaciones (suponiendo que los paquetes de aplicaciones son donde el lote de aplicaciones espera que estén).
No se pueden implementar los paquetes .appx/.msix individuales de una agrupación plana por sí mismos. Deben implementarse a través de .appxbundle/.msixbundle. Sin embargo, puede actualizar paquetes .appx/.msix individuales de un paquete plano después de la instalación inicial. Si actualiza un paquete .appx/.msix individual, también tendrá que actualizar el manifiesto del paquete plano.
Por ejemplo, si la agrupación plana v1 se compone de un paquete .msixbundle, x86 .msix, x64 .msix y un recurso .msix, y sabe que el paquete v2 solo tiene cambios en el paquete de recursos, solo tiene que compilar .msixbundle y el recurso .msix para poder instalar la actualización. Debe compilar .msixbundle para v2 porque la agrupación realiza un seguimiento de todas las versiones de sus paquetes .msix. Al aumentar la versión del recurso .msix a v2, necesita una nueva .msixbundle que tenga esta nueva referencia. El archivo .msixbundle v2 puede contener referencias a la versión 1 x86 .msix y x64 .msix; Los paquetes .msix de una agrupación plana no necesitan tener el mismo número de versión.