2012-10-06 25 views
12

Estoy trabajando con un proyecto bastante grande, con muchos recursos para iOS y no puedo evitar notar que Xcode copia cientos de recursos (texturas, hojas de sprites, archivos de sonido, etc.) que no han cambiado en absoluto desde la última vez que construí en el dispositivo. Hace que la codificación sea realmente lenta cuando cada compilación demora de 2 a 4 minutos en aparecer en el dispositivo.¿Por qué Xcode copia los recursos inalterados al compilar en un dispositivo?

¿Hay alguna manera de hacer que Xcode reconozca que está haciendo cosas redundantes o escriba un script que le permita ser más inteligente acerca de cómo transfiere recursos al dispositivo?

PD Me doy cuenta de que es posible que no haya ninguna función incorporada en 'complementos' para una aplicación. Espero que ese no sea el caso.

Respuesta

3

Usted puede intentar agregar otro destino para el proyecto y el nombre "sin recursos". Excluya todos los recursos pesados ​​de este objetivo. La primera vez que necesita iniciar la aplicación con todos los recursos objetivo, la próxima vez use el objetivo "sin recursos". Si agregaste algo al proyecto, deberías usar el primer objetivo.

0

A veces, XCode realmente pone los recursos sin cambios al paquete. Normalmente, cuando cambia los archivos por Finder, no por XCode.

Crear proyecto -> Limpio para hacer reconstrucción completa

3

iOS solo admite la implementación de paquetes de aplicaciones completos que están firmados en el dispositivo. El proceso para implementar una compilación de depuración en el dispositivo es esto.

  1. compilar el código fuente alterada y firmar binarios imágenes PNG pre-multiplican
  2. Alpha
  3. Crear una carpeta con recursos de la aplicación y binarios dentro
  4. Firma el contenido de la carpeta, se creará un archivo ZIP con la carpeta y firma
  5. Copia el archivo ZIP (.ipa) al dispositivo

Por desgracia, me imagino que el tiempo está siendo s en los n. ° 3 y n. ° 4 que se crean en cada compilación. No he visto ninguna forma de acelerar esto. Si tiene muchas, muchas imágenes PNG, podría try telling Xcode to skip Step 2.

NeverBe's approach suena como una gran idea si su aplicación puede permitirle no incluir muchos de los recursos durante la mayor parte del tiempo que está desarrollando. Alternativamente, podría tener un segundo conjunto de recursos mucho más pequeños/ficticios que podría activar y desactivar.

Cuestiones relacionadas