2012-01-02 2 views
10

cuando creé mi proyecto, lo hice para apoyar ARC, por lo que mi proyecto apoyará iOS 4.3 y anteriores.El uso de código sin ARC en un proyecto ARC-Enabled - Adición de Facebook

Ahora necesito para integrar Twitter y Facebook a la misma. Los marcos de Facebook y Twitter ofrecidos por las compañías no son compatibles con ARC.

La mayoría de los archivos tienen dealloc, y dio a conocer sus variables. Algunos dicen que desechar el proyecto y rehacerlo deshabilitando ARC. Pero, no puedo permitirme hacer esto, ya que he hecho la mayoría de las cosas.

Agregué los archivos FBConnect (había 4 de ellos) y agregué -fno-objc-arc como se describe en this tutorial. Todavía consigo

file://localhost/Users/illepmorgan/Documents/Projects/illep/untitled%20folder/alphaproject/alphaproject/FBRequest.m: error: Automatic Reference Counting Issue: Existing ivar '_delegate' for unsafe_unretained property 'delegate' must be __unsafe_unretained 

Necesito ayuda, no puedo volver a hacer esto.

+0

¿Estás seguro de que has seguido la guía correctamente? Verifique que ha agregado la bandera a todos los archivos. – Emil

+0

Sí, lo hice. Lo intenté de nuevo. y recibo el mensaje que he agregado anteriormente. – Illep

+0

¿Alguien sabe cómo resolver esto? – Illep

Respuesta

20

Asegúrese de que ha agregado la bandera -fno-objc-arco para cada archivo de aplicación (archivo .m).

Y luego limpiar el proyecto (menú Proyecto -> limpia) y construir de nuevo. A veces tuve que limpiar y construir dos veces al hacer esto en clase. Parece un pequeño error.

+0

También deberá agregar los archivos JSON (que se encuentran en una carpeta). Entonces, ¿tengo que agregar la bandera para esos archivos también? Los archivos JSON no se identificaron en el 'objetivo' para agregar la bandera. Qué debería hacer ahora ? – Illep

+0

Los archivos JSON no son código object-c, y no los compilará, por lo que este indicador no se aplica. –

+0

bueno, 'FBConnect' el marco de Facebook tiene una carpeta' JSON' y cuando lo veas encontrarás un montón de código 'Objective-C'. Entonces, ¿tengo que "marcarlos" también? – Illep

Cuestiones relacionadas