Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.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
使用Facebook iOS SDK 3.5的NSJSONSerialization崩溃_Ios_Facebook - Fatal编程技术网

使用Facebook iOS SDK 3.5的NSJSONSerialization崩溃

使用Facebook iOS SDK 3.5的NSJSONSerialization崩溃,ios,facebook,Ios,Facebook,在我将Facebook iOS SDK从3.2更新到3.5之后,当我在iOS早于5的设备上运行我的应用程序时(例如4.3.5),会出现这个错误 如果我将基础框架设为可选的,我可以避免这种崩溃,但我认为这不是最好的选择。 是否有其他方法可以使Facebook SDK在iOS版本5之前的设备上工作?该类在ios5之前不可用-请查看Xcode文档窗口中的类参考。您需要做的是获取JSONKit,一个开源类,并使用它。用法基本相同。您需要将这个类构建到应用程序中,然后动态测试apple类是否存在,然后使用

在我将Facebook iOS SDK从3.2更新到3.5之后,当我在iOS早于5的设备上运行我的应用程序时(例如4.3.5),会出现这个错误

如果我将基础框架设为可选的,我可以避免这种崩溃,但我认为这不是最好的选择。
是否有其他方法可以使Facebook SDK在iOS版本5之前的设备上工作?

该类在ios5之前不可用-请查看Xcode文档窗口中的类参考。您需要做的是获取JSONKit,一个开源类,并使用它。用法基本相同。您需要将这个类构建到应用程序中,然后动态测试apple类是否存在,然后使用适当的类,或者始终使用开源类

请注意,JSONKit不是ARCified的,因此如果应用程序的其余部分是ARC,则需要为其设置适当的编译标志


编辑:这样您就可以更聪明地编写自己的存根,在旧版本中桥接对JSONKit的调用。从概念上讲,您应该能够做到这一点,但我担心的是,如果FB代码是为ios5开发的,那么代码中可能也潜藏着其他Api问题——您可能会花费大量时间不断地寻找和修复这些问题。

来自Facebook iOS SDK changelog v3.5:

删除对iOS 4的支持。*Facebook 6.0放弃了对iOS 4.x的支持。为了保持同步,Facebook SDK也不支持iOS 4.x


因此,如果你更新到Facebook SDK 3.5,你将失去对iOS 4.x的支持。谢谢你,大卫。我知道这门课只在iOS 5之后才开始上课。关键是使用它的是Facebook SDK,而不是直接使用我的应用程序。
dyld: Symbol not found: _OBJC_CLASS_$_NSJSONSerialization
...
Expected in: /System/Library/Frameworks/Foundation.framework/Foundation