iPhone:El uso de una biblioteca estática en una aplicación bloquea el dispositivo pero no el simulador de iPhone

StackOverflow https://stackoverflow.com/questions/1548453

Pregunta

Tengo una biblioteca que creé y ahora quiero utilizarla en una aplicación.Creo que me he vinculado correctamente a la biblioteca.Aquí están todas las cosas que he hecho:

  • Establecer la ruta de búsqueda del encabezado
  • Establezca otros indicadores del vinculador en "-ObjC"
  • Se agregó el proyecto xcode de la biblioteca estática.
  • Se aseguró de que lib.a apareciera como objetivo del marco
  • Se agregó la biblioteca como una dependencia directa.

Como dije en el título, ejecuté exitosamente la aplicación con la biblioteca estática en el simulador.Una vez que intento probar la aplicación usando el dispositivo, falla en el momento en que tiene que usar una función de la biblioteca:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** +[NSDate firstOfCurrentMonth]: unrecognized selector sent to class 0x3841bb44'
2009-10-10 12:45:31.159 Basement[2372:207] Stack:
¿Fue útil?

Solución

Esto se debe a un error en el enlazador actual SDK. Ver este post para más información sobre el problema y posibles soluciones. (También ver este post .)

Actualización:

Otra cosa que puedes intentar es eliminar la biblioteca estática e incluir archivos de origen de la biblioteca directamente en el proyecto de la aplicación. Yo estaba frente a un problema de la biblioteca de enlace estática similar, y eso es lo que terminó cayendo de nuevo en conseguir que se ejecute con éxito. Si esto funciona (sin embargo recaudar una solución que sea), entonces es definitivamente un tema enlazador.

Otros consejos

Me encontré con este problema recientemente. No he podido conseguir el -all_load al trabajo, cuando me di cuenta de que otra categoría que tenía funcionó. Era muy perezosa para esta categoría y la incluyó en otro archivo.

Finalmente he creado una clase ficticia (no hay métodos, variables de instancia) y contó con la aplicación de mis categorías en el archivo .m para esa clase ficticia. Después de hacer esto mis categorías comenzaron a trabajar incluso después me quita la bandera -all_load.

Esto fue en el iPhone OS 3.1.3.

Esto ciertamente no es el camino correcto para solucionarlo, pero parecía funcionar.

código de ejemplo completa es en mi el blog para mis categorías (triviales).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top