2012-10-02 10 views
11

Tengo un dispositivo que fue diseñado en cordova 1.8.1 y xcode 4.4. Yo quería ser capaz de actualizar para que funcione en el iPhone 5 y iOS 6.However incluso cuando intento basta con ejecutar la aplicación para la depuración en xocde 4,5 recibo este error:nuevo error de arquitectura ios6: el archivo es universal (3 sectores) pero no contiene un segmento (n) arm7vs

file is universal (3 slices) but does not contain a(n) armv7s slice: /Users/Shared/Cordova/Frameworks/Cordova.Framework/Cordova for architecture armv7s. 

He googled, y trató de establecer el proyecto para apuntar a arm7vs, pero no funciona. ¿Alguien puede decirme qué causa este error?

¿Debo actualizar mi versión de Cordova/PhoneGap?

Respuesta

41

SoC de iPhone 5 tiene una nueva arquitectura: armv7s. Cuando cambiaste a Xcode 4.5, la configuración de "Arquitecturas válidas" de tu proyecto podría haberse actualizado para incluir también a armv7s. El problema es que sus bibliotecas no parecen soportarlo todavía (no están diseñadas para armv7s).

usted tiene tres opciones para solucionar este problema:

  • Eliminar armv7s del proyecto (objetivo) "Construir Ajustes"/"Arquitecturas válidos": enter image description here

  • Ajuste el "Build Active Architecture Sólo" ajuste a YES:
    enter image description here

  • actualización de las bibliotecas estáticas (si tienen una versión más reciente w ITH armv7s apoyo)

EDIT: For those who cannot find the Build Active Architecture Only option, make sure that the "All" filter button is active under Build Settings:

enter image description here

+1

Si quito armv7s del proyecto, que no funcionará en iPhone5/iOS6 ¿verdad? – Bohdi

+1

¡Lo hará! Plain armv7 es compatible con iPhone 3GS, 4, 4S y 5 más todos los iPads. armv7s tiene algunas características/optimizaciones nuevas (es posible que obtenga un mejor rendimiento en un iPhone 5 en comparación con una versión de armv7) pero no es obligatorio. –

+1

gracias entiendo mejor ahora – Bohdi

Cuestiones relacionadas