这是我的代码:
Reachability *r = [Reachability reachabilityWithHostname:host];
r.reachableBlock = ^(Reachability*reach)
{
// Update the UI on the main thread
});
};
r.unreachableBlock = ^(Reachability*reach)
{
// Update the UI on the main thread with error alert
});
};
[r startNotifier];
运行最后一个语句后,我记录了以下错误,并且它永远不会执行任何reachableBlock
或unreachableBlock
。
SCNetworkReachabilitySetDispatchQueue() failed: Permission denied
对于任何想要知道我已经尝试过的人,我也尝试过:
dispatch_async(dispatch_get_global_queue(0,0), ^{
[r startNotifier];
});
但这会产生相同的结果。 我记录了一个问题here。
答案 0 :(得分:1)
这不再是问题。
由于一些神秘的原因,我清理了构建文件夹,重置了iOS模拟器,重新启动它并重新编译 - 错误消失了。我一开始没有成功完成这些步骤,但只是为了尝试而做到这一点,并且它有效!