由于6月1日起苹果将开始强制app适配iPV6,就对现有工程做了一个排查,发现一点更新一次吧,现将发现的AF中的修改先列出来,有其他的再后续补上。
只需要修改2个文件
修改的文件
AFNetworkReachabilityManager.h
AFNetworkReachabilityManager.m
修改代码:
+ (instancetype)managerForAddress:(conststructsockaddr_in*)address;【前】
把对应的in 改成 in6
+ (instancetype)managerForAddress:(conststructsockaddr_in6*)address;【后】
修改代码:
+ (instancetype)managerForAddress:(conststructsockaddr_in*)address 【前】
把对应的in 改成 in6
+ (instancetype)managerForAddress:(conststructsockaddr_in6*)address 【后】
修改代码:
+ (instancetype)sharedManager {
staticAFNetworkReachabilityManager*_sharedManager =nil;
staticdispatch_once_tonceToken;
dispatch_once(&onceToken, ^{
structsockaddr_inaddress;
bzero(&address,sizeof(address));
address.sin_len=sizeof(address);
address.sin_family=AF_INET;
_sharedManager = [selfmanagerForAddress:&address];
});
return_sharedManager;
}【前】
+ (instancetype)sharedManager {
staticAFNetworkReachabilityManager*_sharedManager =nil;
staticdispatch_once_tonceToken;
dispatch_once(&onceToken, ^{
structsockaddr_in6address;
bzero(&address,sizeof(address));
address.sin6_len=sizeof(address);
address.sin6_family=AF_INET6;
_sharedManager = [selfmanagerForAddress:&address];
});
return_sharedManager;
}【后】
如果想了解iPV6相关原理和其他修改,可以参考下面文章。
http://www.jianshu.com/p/54b989098537
网友评论