2010-12-15 8 views
13

Es importante asegurarse de que todas las aplicaciones de iOS enviadas a la AppStore tengan un tamaño inferior a 20 MB para que puedan descargarse por aire.¿Cuál es la forma más fácil de determinar el tamaño de los paquetes .app de iOS durante el desarrollo?

Estoy trabajando en una aplicación que se puede estar acercando a ese límite, y he descubierto que no parece haber una manera fácil de decir el tamaño del paquete de salida actual de XCode.

En XCode4 en particular, de forma predeterminada, todas las construcciones están guardadas en un directorio temporal de difícil acceso y de nombre críptico. No quiero anular este comportamiento predeterminado a menos que sea necesario.

Sé que puedo rastrear el paquete .app mirando los registros de compilación, abriendo una ventana de shell, cambiando a ese directorio, y usando 'du' - pero espero encontrar una manera más rápida y fácil de mantener rastrear el tamaño del archivo .app después de cada compilación nueva.

Ni siquiera hay una forma fácil de hacerlo directamente en un iPhone o iPad para determinar el tamaño de una aplicación. En general aprecio esto, pero no cuando estoy en medio de la optimización.

¿Alguna idea de las mejores prácticas?

ACTUALIZACIÓN: Estoy usando XCode 4 ahora para la mayoría de mi desarrollo diario, y parece que cada solución hasta ahora no funciona en XCode 4 ya sea porque la funcionalidad ha cambiado o por características (como Archivar) todavía vendrán pronto Creo que la respuesta final puede ser "usar XCode 3" para la fase particular de desarrollo. Sé que todavía necesitaré utilizar XCode 3 para la versión final y la presentación de todos modos ...

+0

+1 para una pregunta bien descrita! – Linuxmint

Respuesta

2

Cree un script (perl, bash, AppleScript, lo que sea ...) y agréguelo a sus Build Scripts. El script puede entonces codificarse en la ubicación mágica, comprimir el archivo .app en/tmp, du -s -h el zip resultante y canalizar la salida a algún archivo de registro ... tal vez incluso destellar luces de advertencia de color rojo brillante enganchadas a un puerto paralelo USB retransmitir para avisarle que excede un límite de tamaño de archivo.

+0

Esto no es necesariamente una opción "fácil", pero si mantenerse bajo un límite de tamaño es realmente crítico, esta es la mejor manera que he visto para automatizar la seguridad. Me pregunto si alguien realmente ha implementado un script como este en cualquier lugar todavía. – radven

2

En realidad, es el tamaño de la .ipa, no la .app, que tiene que ser inferior a 20 MB. Como .ipa es un archivo zip, obtienes un poco más de espacio para trabajar. La única forma de encontrar el tamaño que conozco sería crear y archivar en XCode y ver el tamaño del archivo en Finder.

+0

Un buen punto sobre el .ipa que es una cremallera comprimida, no había pensado en eso. Pero en este caso, no creo que importe demasiado: los recursos generados que estoy optimizando ya son archivos .PNG altamente comprimidos. – radven

+0

Build & Archive es una opción en XCode 4, pero la funcionalidad de compartir que realmente te permite acceder al archivo parece que todavía "llegará pronto". Quizás tenga que volver a XCode 3 para este trabajo ... – radven

11

Donde trabajo, hacemos un archivo de Xcode (compilación y archivo) y luego exportamos ese archivo en el disco desde la ventana del organizador (usando el botón Compartir).

Esto generará un archivo .ipa. El tamaño de ese archivo es lo que estás buscando.

+0

Al hacer optimizaciones de tamaño, este es un montón de pasos repetitivos para realizar. Hacer un archivo, exportarlo, medirlo, y luego eliminar tanto el archivo como el archivo exportados toman mucho tiempo. Estoy esperando una manera más fácil, pero podría no haber una. – radven

+0

Ah, y acabo de descubrir que la funcionalidad de Archivar/Compartir aún no está implementada en XCode4. Hmmmm .... – radven

+0

Esta es la mejor respuesta – barfoon

3

Debe haber una carpeta 'Productos' en su proyecto de Xcode. Dentro de esa carpeta estarán sus archivos .app. Haga clic derecho en su archivo y seleccione 'Revelar en el buscador'.

+0

Creo que esto funcionó en XCode3, pero aunque la carpeta de productos todavía está allí en XCode4, ya no hay una opción de "revelar en el buscador" cuando haces clic derecho. – radven

+0

Acabo de comprobar mi versión de Xcode 4 y había una opción llamada "Mostrar en el buscador" que parecía hacer lo mismo. – aepryus

+0

Veo la opción "Mostrar en el buscador", pero parece estar atenuada en todos mis proyectos. ¿Realmente funciona para usted, o quizás una característica no implementada? – radven

0

El archivo que envía a Apple es un archivo .zip, es su archivo binario comprimido. Por ejemplo, estoy trabajando en una aplicación que tiene más de 120 MB sin comprimir, pero se comprime a unos 19 MB, ya que se trata principalmente de datos. Supongo que tiene mucha holgura porque la mayoría de sus archivos no son comprimidos.

Cuestiones relacionadas