Ios6 如何在RestKit v0.20.0中设置serviceUnavailableAlertEnabled

Ios6 如何在RestKit v0.20.0中设置serviceUnavailableAlertEnabled,ios6,restkit,afnetworking,Ios6,Restkit,Afnetworking,在v0.20.0之前的Restkit版本中,它曾经是一个足够简单的方法来检查服务不可用性并显示适当的响应 objectManager.client.serviceUnavailableAlertEnabled = YES; 我们怎样才能在最新的RestKit中实现同样的效果呢?我自己就知道了 由于RKClient不再出现在最新的RestKit中,因此它已被来自AFNetworking的AFHTTPClient所取代。AFNetworking中的可达性包装器非常简单,可以使用 首先将Syste

在v0.20.0之前的Restkit版本中,它曾经是一个足够简单的方法来检查服务不可用性并显示适当的响应

objectManager.client.serviceUnavailableAlertEnabled = YES;
我们怎样才能在最新的RestKit中实现同样的效果呢?

我自己就知道了

由于RKClient不再出现在最新的RestKit中,因此它已被来自AFNetworking的AFHTTPClient所取代。AFNetworking中的可达性包装器非常简单,可以使用

  • 首先将SystemConfiguration.framework添加到项目中

  • 然后将
    \import
    添加到
    .pch
    文件中

最后,只要网络可达性发生变化,就注册一个回调块

[objectManager.HTTPClient setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
    if (status == AFNetworkReachabilityStatusNotReachable) {
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"No network connection"
                                                        message:@"You must be connected to the internet to use this app."
                                                       delegate:nil
                                              cancelButtonTitle:@"OK"
                                              otherButtonTitles:nil];
        [alert show];
    }
}];

当应用程序在没有internet连接的情况下启动时,此功能也会起作用。

以防有人在使用RestKit(包括AFNetworking)实现此答案时遇到错误,如
“HTTPCLIENT的no visible@interface声明选择器SetReachibilityStatusChangeBlock”
:同时确保将
#导入
放在
#导入
之前,如本文所述。