ios - Error del enlazador al intentar usar el SDK de Facebook con Parse
parse.com (3)
Tuve el mismo error, solo asegúrese de eliminar la biblioteca ParseFacebookUtils.framework
de su proyecto y conservar solo ParseFacebookUtilsV4.framework
.
He visto preguntas similares sobre esto pero no puedo encontrar una respuesta. Necesito usar el Facebook SDK
con Parse
. Estoy usando el último SDK de Parse y el último SDK de Facebook. He seguido las instrucciones en Parse.com sobre el uso muy cercano de Facebook con Parse, lo que significa que he arrastrado los marcos Parse AND Bolts a mi proyecto.
Cuando construyo mi proyecto, recibo un error de enlace:
símbolos no definidos para la arquitectura x86_64: "_FBTokenInformationExpirationDateKey", referenciados a partir de: - [PFFacebookTokenCachingStrategy cacheTokenInformation:] en ParseFacebookUtils (PFFacebookTokenCachingStrategy.o) - [PFFacebookTokenCachingStrategy ExpirationDate] en ParseFacebookUtils (PFFacebookTokenCachingStrategy.o) - [PFFacebookTokenCachingStrategy setExpirationDate:] en ParseFacebookUtils (PFFacebookTokenCachingStrategy.o ) "_FBTokenInformationTokenKey", referenciado a partir de: - [PFFacebookTokenCachingStrategy accessToken] en ParseFacebookUtils (PFFacebookTokenCachingStrategy.o) - [PFFacebookTokenCachingStrategy setAccessToken:] en ParseFacebookUtils (PFFacebookTokenCachingStrategy.o) "_FBTokenInformationUserFBIDKey", referenciados a partir de: - [PFFacebookTokenCachingStrategy facebookId] en ParseFacebookUtils (PFFacebookTokenCachingStrategy. o) - [PFFacebookTokenCachingStrategy setFacebookId:] en ParseFacebookUtils (PFFacebookTokenCachingStrategy.o) "_OBJC_CLASS _ $ _ FBAppCall", a la que se hace referencia en: objc-class-ref i n ParseFacebookUtils (PFFacebookAuthenticationProvider.o) "_OBJC_CLASS _ $ _ FBRequest", referenciado de: objc-class-ref en ParseFacebookUtils (PFFacebookAuthenticationProvider.o) "_OBJC_CLASS _ $ _ FBSession", referenciado de: objc-class-ref en ParseFacebookUtils (PFFacebookAuthenticationProvider.o) " _OBJC_CLASS _ $ _ FBSessionTokenCachingStrategy", hace referencia a partir de: _OBJC_CLASS _ $ _ PFFacebookTokenCachingStrategy en ParseFacebookUtils (PFFacebookTokenCachingStrategy.o) "_OBJC_METACLASS _ $ _ FBSessionTokenCachingStrategy", hace referencia a partir de: _OBJC_METACLASS _ $ _ PFFacebookTokenCachingStrategy en ParseFacebookUtils (PFFacebookTokenCachingStrategy.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
He intentado tener -ObjC
en mis banderas de vínculos en la configuración del proyecto y no -ObjC
ninguna manera. ¿Alguien sabe cómo puedo evitar esto?
Miré esta publicación
Parse para iOS: errores al intentar ejecutar la aplicación
pero nada sugirió que funcionó para mí (necesito la funcionalidad de Facebook en mi aplicación, así que no puedo omitirla y he cumplido con la marca -ObjC y también con las cuentas y los marcos sociales, ¡nada se deshace de mi error!)
También tuve el mismo error. Esto es lo que hice para arreglarlo ...
Eliminé todos los marcos de Parse existentes de mi proyecto. Estaba usando marcos de la versión 1.6.1 de Parse desde enero de 2015. Esto incluía:
- Pernos
- Analizar gramaticalmente
- ParseCrashReporting
- ParseFacebookUtils
- ParseUI
Después de eliminarlos, descargué el último SDK de Parse (1.7.4) y luego hice un arrastre y soltó estos marcos en mi proyecto:
- Pernos
- Analizar gramaticalmente
- ParseCrashReporting
- ParseFacebookUtilsV4 <--- note el V4
- ParseUI
Luego descargué el último y mejor FacebookSDK (FacebookSDKs-iOS-20150528.pkg) e hice un arrastre y soltó estos marcos en mi proyecto:
- FBSDKCoreKit
- FBSDKLoginKit
- FBSDKShareKit
Todo parece funcionar ahora. Tenga en cuenta que estoy vinculando Accounts.framework y Social.framework, y no estoy usando el distintivo -ObjC.
He resuelto este problema usando la respuesta de Akram. He aquí lo que hice exactamente. De una manera simple, id lo hizo en mi archivo Podfile.
pod ''Parse''
pod ''ParseFacebookUtilsV4''
pod ''FBSDKCoreKit''
pod ''FBSDKShareKit''
pod ''FBSDKLoginKit''
Nota: elimine otros marcos si los ha agregado manualmente para la integración de análisis.