我发现这篇文章是关于从iOS请求的URL请求中解析JSON响应:http://www.raywenderlich.com/2965/how-to-write-an-ios-app-that-uses-a-web-service。
本文使用JSON Framework。我从网页上下载了最新的“SBJson_v3.0.4.zip”并将其拖入我项目中的新组。但随后构建返回62错误,如:
有人知道为什么吗? JSON Framework是否与最新的Xcode不兼容?
答案 0 :(得分:12)
从iOS 5开始,iOS有自己的JSON解析器(谢谢Twitter!)
NSError *err = nil;
id result = [NSJSONSerialization JSONObjectWithData:data options:0 error:&err];
确保检查输出的类型 - 它可以是从字符串到数字,从字典到数组的任何内容。
答案 1 :(得分:4)
您需要为程序包中提供的特定文件禁用自动引用计数。如果您转到项目设置 - >你的目标 - > “构建阶段”选项卡并展开“编译源”箭头,您将看到所有项目文件。
在属于SBJSON的那个下你需要添加-fno-objc-arc
编译器标志(找到文件,双击表格的右侧位置,它会弹出一个框,你可以在其中添加编译器标志)
SBJSON与最新的SDK兼容,但它与最新SDK中启用的自动引用计数不兼容,这就是您遇到这些错误的原因。
答案 2 :(得分:1)
最新的SBJSON有ARC支持。
答案 3 :(得分:0)
在项目设置中,转到构建阶段并单击编译源,您将获得一堆.m文件,这些文件只是您的项目文件。 单击需要禁用ARC的相应文件的编译器标志列,然后键入 -fno-objc-arc 。 此外,如果您的项目不支持ARC,但您需要在少数文件中启用ARC,则可以按照相同的步骤进行操作,但这次输入 -fobjc-arc
现在您可以使用任何json套件。无需担心格式问题。 但我强烈建议尝试使用Apple内置的NSJSonSerialization方法,如果对Apple不满意,可以选择第三方json套件。
github上有很多可用的文件和文档。我目前在我的项目中使用的那个是johnezang-jsonkit
希望这有助于你