Iphone 从静态库解析JSON的iOS返回null

Iphone 从静态库解析JSON的iOS返回null,iphone,ios,objective-c,json,static-libraries,Iphone,Ios,Objective C,Json,Static Libraries,我尝试使用静态库进行测试,并调用此方法(位于静态库中) 我希望while循环是无限的,因为json返回null,但是委托方法didFinishParsing被发送,这意味着它不是null。 像这样(ACParser是库中的一个类) 字典是这样声明的 __strong NSMutableDictionary *dictionary; 该URL上的JSON非常简单 { "text" : "testing" } 但是,每次调用它时,在委托方法didFinishParsing:中,记录diction

我尝试使用静态库进行测试,并调用此方法(位于静态库中)

我希望
while
循环是无限的,因为json返回
null
,但是委托方法
didFinishParsing
被发送,这意味着它不是
null
。 像这样(ACParser是库中的一个类)

字典是这样声明的

__strong NSMutableDictionary *dictionary;
该URL上的JSON非常简单

{
"text" : "testing"
}
但是,每次调用它时,在委托方法
didFinishParsing:
中,记录
dictionary
将返回
(null)
。我做错了什么?是因为我从静态库调用它吗

parseJSONfromURL
”中的“
json
”会在该方法返回时自动删除/超出范围,因此它永远不会有机会被分配给您的强“
字典
”属性。 这就是为什么你看到空

尝试在
parseJSONfromURL
方法中设置属性,看看是否有效,或者创建一个非自动删除的字典并返回该字典。

尝试添加以下内容:

NSLog(@“%@,[NSJSONSerialization JSONObjectWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:url]]选项:NSJSONReadingAllowFragments错误:nil])

在那里,看看它是否打印出您期望的JSON。如果没有,你的URL是错误的。如果是这样,那么您的数据就不会被保留。尝试如下实例化json变量:


NSMutableDictionary*json=[NSMutableDictionary Dictionary WithDictionary:[NSJSONSerialization JSONObjectWithData:[NSData dataWithContentsOfURL:url]选项:NSJSONReadingMutableLeaves错误:&err]]

那么你能澄清或详细说明你原来问题中的最后两句话吗?我不明白为什么
字典
(null)
我在
parseJSONfromURL
中尝试了
\uu strong NSMutableDictionary*json
,但它仍然返回null。我无法在方法中设置属性,因为我正在从库中调用它。如果
json==nil
,该代码中不是有一个无限循环吗?这就是我期望发生的事情,这就是为什么我把它放在那里,但它发送回一些东西,它只是不包含任何东西。它只会发送一个
bool
didFinishParsing:
是用布尔表达式调用的,而不是json本身)按照顺序,字典是
null
,因为
true
false
(即
1
0
)无法指向有效的
NSDictionary
objects我想发回bool,委托方法只是让我知道它已经完成了解析,不应该发回任何东西。
__strong NSMutableDictionary *dictionary;
{
"text" : "testing"
}