Saltar al contenido

La anatomía de los paquetes de aplicaciones de macOS

¿Qué hay en una aplicación de macOS y qué hace? Las aplicaciones de macOS parecen archivos monolíticos, pero son más como carpetas con elegantes íconos llamados paquetes. Abra estos paquetes y encontrará una serie de archivos que necesita la aplicación. ¿Qué hace todo esto? La comprensión de estos paquetes es útil para desarrolladores, administradores, modders de juegos, constructores de hackintosh, usuarios preocupados por la seguridad y cualquier persona que solucione problemas de una aplicación.

¿Qué son los paquetes de aplicaciones de macOS?

Según lo definido por Apple, un paquete es “un directorio con una estructura jerárquica estandarizada que contiene código ejecutable y los recursos que usa el código”. Con otro nombre, es una aplicación. Los desarrolladores deben adherirse a una estructura y formato específicos para garantizar que su aplicación se ejecute correctamente. Rompe estas convenciones y probablemente romperás tu aplicación. Cuando algo no funciona correctamente, un paquete de aplicación puede ser un lugar útil para la resolución de problemas.

Las aplicaciones no son el único tipo de paquetes. Los paquetes también se utilizan para archivos con extensiones como .framework, .bundeln, .plugin y .kext. Los paquetes aparecen como elementos uniformes en el Finder hasta que los abra abriendo el paquete.

Paquetes de aplicaciones abiertos

A diferencia de los directorios, los paquetes de aplicaciones requieren un breve baile para abrirse.

1. Haga clic con el botón derecho en el icono de la aplicación en “/ Aplicaciones /”.

2. Haga clic en “Mostrar contenido del paquete” en el menú contextual.

3. Haga doble clic en la carpeta Contenido para ir al directorio principal de la aplicación.

Anatomía básica del paquete de aplicaciones macOS

Encontrará varios archivos en la carpeta “Contenido” del paquete. Todas las aplicaciones de macOS deben contener al menos los siguientes archivos:

  • Info.plist: contiene detalles de configuración obligatorios junto con las cadenas de ID de la aplicación.
  • MacOS / ejecutable: el código que se ejecutará cuando el usuario inicie la aplicación ubicada en la carpeta MacOS. Sin un ejecutable, no obtienes mucho de un paquete.

También puede encontrar una variedad de archivos adicionales en algunas carpetas comunes:

  • Complementos: mini-ejecutables similares a extensiones que amplían la funcionalidad del ejecutable principal. A diferencia de los recursos estáticos, los complementos agregan funcionalidad a la aplicación de forma dinámica.
  • recursos: Archivos de soporte en los que se basa su aplicación. Esta carpeta contiene, entre otras cosas, imágenes, símbolos, sonidos, fuentes, archivos de plumilla, localizaciones y almacenes de datos. A diferencia de los complementos, estos recursos admiten la funcionalidad principal del ejecutable.
  • Frameworks: Al igual que los complementos, los marcos de alto nivel que requiere su aplicación son paquetes propios. Sin embargo, utilizan una estructura jerárquica diferente.
  • Firma de código: un archivo plist estructurado que se utiliza para proporcionar la firma de código para cada parte de la aplicación. Estas firmas permiten que la aplicación y macOS verifiquen la integridad de la aplicación y eviten ataques de secuestro de aplicaciones.

conectado: ¿Se derramó agua en tu Macbook? Esto evitará daños por agua.

Los paquetes de aplicaciones de iOS utilizan la misma estructura básica y formato de archivo, aunque a menudo aparecen en una jerarquía diferente.

Info.plist

Info.plist es el resumen principal de los datos demográficos básicos de su aplicación. Esto incluye su ID de paquete, que debe ser único de todos los demás ID de paquete. Para facilitar este proceso, Apple recomienda utilizar la notación de dominio inverso, como. B. “com.apple.siri.launcher” u “org.videolan.vlc”. Para obtener más información sobre Info.plist, consulte Verifique la Lista de claves de Apple y piense en lo que hace cada tecla.

Este archivo también contiene información básica de la aplicación, como el icono de la aplicación, el nombre de la aplicación, el número de versión, la información de derechos de autor, los enlaces de informes de errores y el idioma predeterminado. De acuerdo con las convenciones y las reglas del sistema, la “I” en “Información” siempre se escribe en mayúscula.

Ejecutable

Aquí es donde vive el código principal de su aplicación. Cuando se abre la aplicación, macOS ejecuta el código contenido en el archivo ejecutable ubicado en el directorio “MacOS” del paquete. Casi todas las aplicaciones tienen un solo archivo ejecutable, aunque se pueden usar dos o más para ejecutables auxiliares. Este archivo no suele interesar a nadie más que a los desarrolladores de software, ya que el usuario no puede verlo ni editarlo fácilmente.

Recursos y archivos de soporte adicionales

Todo lo que es importante para su aplicación debe incluirse en su paquete. Si no forma parte del ejecutable en sí, debe colocarse en una de las carpetas de recursos del paquete. Estos recursos pueden almacenarse en la carpeta principal “Recursos” o dividirse en diferentes carpetas.

  • En caso de duda, la mayoría de los recursos terminan en la carpeta “Recursos”.
  • Los marcos van a la carpeta “Marcos”.
  • Los complementos van a la carpeta “Complementos”.
  • Los archivos de localización (directorios .lproj) van a la carpeta Recursos.

Fuera de estos requisitos, Apple tiene muchas sugerencias y convenciones que deben seguirse a menos que tenga una razón válida para hacer lo contrario.

Conclusión

Las aplicaciones macOS están contenidas en paquetes, que son contenedores jerárquicos para archivos de aplicaciones. La estructura básica es la misma para todas las aplicaciones. Los archivos que son más interesantes para el usuario se encuentran en la carpeta Recursos en el paquete de la aplicación.