Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/121.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS FacebookSDK+;解析SDK+;谷歌地图SDK_Ios_Parse Platform_Facebook Ios Sdk_Google Maps Sdk Ios_Bolts Framework - Fatal编程技术网

iOS FacebookSDK+;解析SDK+;谷歌地图SDK

iOS FacebookSDK+;解析SDK+;谷歌地图SDK,ios,parse-platform,facebook-ios-sdk,google-maps-sdk-ios,bolts-framework,Ios,Parse Platform,Facebook Ios Sdk,Google Maps Sdk Ios,Bolts Framework,我搜索了很多,发现,GoogleMapSDK所需的-ObjC标志与ParseSDK和FacebookSDK不兼容。所以我阅读了所有的答案,并试图解决我的问题。这个问题还没有解决 我执行的步骤: 问题1:Parse不能与-ObjC一起工作 解决方案1:使用-ObjC导入FacebookSDK进行解析完成 问题2:Parse和FBSDK都使用螺栓。框架,链接器给出了重复符号错误(其中大约92个) 解决方案2:删除Bolts.framework,因为FacebookSDK已经与之预绑定 问题3:在删

我搜索了很多,发现,
GoogleMapSDK
所需的
-ObjC
标志与
ParseSDK
FacebookSDK
不兼容。所以我阅读了所有的答案,并试图解决我的问题。这个问题还没有解决

我执行的步骤:

  • 问题1:Parse不能与-ObjC一起工作
  • 解决方案1:使用
    -ObjC
    导入FacebookSDK进行解析完成

  • 问题2:Parse和FBSDK都使用
    螺栓。框架
    ,链接器给出了
    重复符号
    错误(其中大约92个)

  • 解决方案2:删除Bolts.framework,因为FacebookSDK已经与之预绑定

  • 问题3:在删除Bolts.framework之后,重复的错误消失了,但是有一个小小的链接器错误我无法理解。我假设他们在新的SDK版本中做了一些更改。错误如下:

  • 解决方案:
架构x86_64的未定义符号: “bfTaskMultipleExceptionExceptionsException”,引用自: ___53+[PFObject(Private)deleteAllalsync:withSessionToken:][u block_invoke214 in Parse(PFObject.o) ___65+[PFObject(Private)\u deepSaveAsync:withCurrentUser:sessionToken:][u block\u在解析中调用311(PFObject.o) ld:找不到架构x86_64的符号 叮当声:错误:链接器命令失败,退出代码为1(使用-v查看调用)

在[本答复关于SO][1]的评论中提出了同样的问题,但没有任何答复或建设性答复

还有一件事我注意到FacebookSDK附带了螺栓版本
1.1.3
Parse的zip文件中有一个版本
1.1.4
。这是造成问题的原因吗?? P.P.S.截至今天(2015年3月19日),我正在使用SDK的最新版本

它们是: -解析SDK:1.6.4
-GoogleMaps SDK:1.9.2

早在iOS版GoogleMaps SDK推出时,我就尝试了几种方法来破解一些链接器错误:

我发现了一个解决丢失符号的方法,就是在代码中重新定义丢失的符号

bfTaskMultipleExceptionsExceptionsException
字符串的定义如下:

NSString *const BFTaskMultipleExceptionsException = @"BFMultipleExceptionsException";
那么,你可以试着在你的代码里放一行吗

从github的历史来看,这似乎是在大约19天前添加到螺栓上的。螺栓版本1.1.4于14天前发布(1.1.3于去年10月发布)。因此,它可能是由您注意到的螺栓版本不匹配引起的

另一个选择可能是在Bolts 1.1.4发布之前获取较旧版本的Parse


一旦新的Facebook SDK与Bolts 1.1.4一起提供,这一问题可能会得到解决。

因此Bolts框架1.1.3与Parse 1.6.3配合使用。但是在任何地方都找不到Parse 1.6.3。因此,我做了大量的挖掘工作,查阅了cocoa pods的json文件,获得了下载
Parse 1.6.3
或任何框架版本的直接链接。可可豆荚是一个值得研究的存储库

对于所有其他人,特别是寻找Parse 1.6.3的人。只需在json中找到
source
链接,并将其复制到浏览器中即可

我以最后的结论结束这个问题:

解析1.6.3和面书DK 3.93取决于螺栓1.1.3


Parse 1.6.4更新为Bolts 1.1.4,但截至目前facebook sdk尚未更新。因此,我们必须使用Parse 1.6.3,直到facebook sdk更新为bolts 1.1.4

使用CocoaPods为您管理所有这些依赖关系?正如@jshier所说。就用椰子荚吧。我想你会发现所有这些问题都会消失。最好的luck@Logan我试过使用-强制加载,它似乎不起作用。另外,这是一个变通办法,据我所知,它打破了谷歌地图中的一些东西。所以我不喜欢使用it@jshier可可豆将自动完成我手动完成的操作。可可豆还能做些什么来解决我的问题?我从来没用过可可豆。解释我错了。@user2877496,同样的问题,我问过jshier,可可豆做什么(除了自动处理版本)可以帮助我解决问题?这似乎是Facebook正在解决的一个已知问题,Sergey发布了与我建议相同的解决方法:据我所知,我有3个解决方案可以尝试:(按优先顺序排列):1.切换到使用螺栓1.1.3而不是1.1.4 2的解析SDK。cocoapods 3在FacebookSDK上强制执行螺栓1.1.4。重新定义@Saxon提到的缺失符号Druce@Saxron你有parse ios sdk版本1.6.3的链接吗?嗨,leo,从这条评论来看,parse似乎已经破坏了他们以前下载的链接,所以现在y总是下载损坏的版本1.6.4:|啊,它应该在您的方法之外。但是,听起来像是降级到解析1.6.3,您设法找到了更好的方法:)